2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
जावा'sjava.util.Collections
वर्गाः संग्रहाणां (यथा सूचीः, समुच्चयः, नक्शाः च) परिवर्तनार्थं वा प्रत्यागन्तुं वा स्थिरविधिसमूहं प्रददति ।Collections
वर्गः एकः उपयोगितावर्गः अस्ति यः संग्रहेषु सुविधाजनकं एल्गोरिदम्, संचालनं च प्रदातुं विनिर्मितः अस्ति ।अथ युग्मम्Collections
वर्गाणां परिचयः तेषां सामान्यतया प्रयुक्तानां पद्धतीनां च परिचयः।
sort(List<T> list)
、sort(List<T> list, Comparator<? super T> c)
binarySearch(List<? extends Comparable<? super T>> list, T key)
、binarySearch(List<? extends T> list, T key, Comparator<? super T> c)
reverse(List<?> list)
rotate(List<?> list, int distance)
fill(List<? super T> list, T obj)
copy(List<? super T> dest, List<? extends T> src)
min(Collection<? extends T> coll)
、max(Collection<? extends T> coll)
synchronizedList(List<T> list)
、synchronizedSet(Set<T> s)
、synchronizedMap(Map<K, V> m)
unmodifiableList(List<? extends T> list)
、unmodifiableSet(Set<? extends T> s)
、unmodifiableMap(Map<? extends K, ? extends V> m)
sort(List<T> list)
: सूचीं आरोहणक्रमेण क्रमयन्तु, सूचीयां तत्त्वानि कार्यान्वितुं अर्हन्तिComparable
अन्तरफलकम् ।- List<Integer> numbers = Arrays.asList(5, 3, 1, 4, 2);
- Collections.sort(numbers); // 排序后,numbers为 [1, 2, 3, 4, 5]
sort(List<T> list, Comparator<? super T> c)
: निर्दिष्टतुलनानुसारं सूचीं क्रमयति ।- List<String> names = Arrays.asList("Charlie", "Alice", "Bob");
-
- // 根据字符串长度排序
- Collections.sort(names, (s1, s2) -> s1.length() - s2.length());
-
-
-
नोटः: Collections.sort(names, (s1, s2) -> s1.length() - s2.length()) (s1, s2) -> s1.length() - s2.length() इदं Lambda Expression अस्ति Comparator interface इत्यस्य compare विधिं कार्यान्वितुं प्रयुक्तम् ।
binarySearch(List<? extends Comparable<? super T>> list, T key)
: सूचीयां एकं तत्त्वं अन्वेष्टुं अनुक्रमणिकां च प्रत्यागन्तुं द्विचक्रीय अन्वेषणस्य उपयोगं कुर्वन्तु । सूची अवश्यं क्रमबद्धा भवितुमर्हति।- List<Integer> sortedNumbers = Arrays.asList(1, 2, 3, 4, 5);
- int index = Collections.binarySearch(sortedNumbers, 3); // 返回索引 2
binarySearch(List<? extends T> list, T key, Comparator<? super T> c)
: निर्दिष्टस्य तुलनात्मकस्य सूचीयां एकं तत्त्वं अन्वेष्टुं द्विचक्रीय अन्वेषणस्य उपयोगं कुर्वन्तु ।- List<String> sortedNames = Arrays.asList("Alice", "Bob", "Charlie");
- int index = Collections.binarySearch(sortedNames, "Bob", String::compareTo); // 返回索引 1
max(Collection<? extends T> coll)
: संग्रहे बृहत्तमं तत्त्वं प्रत्यागच्छति ।- List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
- int max = Collections.max(numbers); // 返回 5
min(Collection<? extends T> coll)
: सेट् मध्ये लघुतमं तत्त्वं प्रत्यागच्छति ।int min = Collections.min(numbers); // 返回 1
reverse(List<?> list)
: सूचीस्थतत्त्वानि विपर्यययन्तु।- List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
- Collections.reverse(numbers); // 反转后,numbers为 [5, 4, 3, 2, 1]
shuffle(List<?> list)
: यादृच्छिकरूपेण सूचीं फेरबदलं कुर्वन्तु।Collections.shuffle(numbers); // numbers的元素顺序将被随机打乱
fill(List<? super T> list, T obj)
: सूचीयां सर्वाणि तत्त्वानि निर्दिष्टेन तत्त्वेन प्रतिस्थापयन्तु ।- List<String> list = new ArrayList<>(Arrays.asList("a", "b", "c"));
- Collections.fill(list, "z"); // list 现在是 ["z", "z", "z"]
copy(List<? super T> dest, List<? extends T> src)
: स्रोतसूचौ सर्वाणि तत्त्वानि लक्ष्यसूचौ प्रतिलिपिं करोति ।- List<String> dest = Arrays.asList(new String[3]);
- List<String> src = Arrays.asList("a", "b", "c");
- Collections.copy(dest, src); // dest 现在是 ["a", "b", "c"]
unmodifiableList(List<? extends T> list)
: अपरिवर्तनीयं दृश्यं प्रत्यागच्छति ।- List<String> list = Arrays.asList("a", "b", "c");
- List<String> unmodifiableList = Collections.unmodifiableList(list);
- // unmodifiableList.add("d"); // 会抛出 UnsupportedOperationException
synchronizedList(List<T> list)
: सूत्र-सुरक्षितसूचीं प्रत्यागच्छति ।- List<String> list = new ArrayList<>();
- List<String> syncList = Collections.synchronizedList(list);
अत्र दर्शयति व्यापकं उदाहरणम्Collections
वर्गानां केचन सामान्यविधयः : १.
- import java.util.*;
-
- public class CollectionsExample {
- public static void main(String[] args) {
- List<Integer> numbers = new ArrayList<>(Arrays.asList(5, 3, 1, 4, 2));
-
- // 排序
- Collections.sort(numbers);
- System.out.println("排序后: " + numbers);
-
- // 反转
- Collections.reverse(numbers);
- System.out.println("反转后: " + numbers);
-
- // 随机打乱
- Collections.shuffle(numbers);
- System.out.println("随机打乱后: " + numbers);
-
- // 查找最大和最小值
- int max = Collections.max(numbers);
- int min = Collections.min(numbers);
- System.out.println("最大值: " + max + ", 最小值: " + min);
-
- // 二分搜索
- Collections.sort(numbers);
- int index = Collections.binarySearch(numbers, 3);
- System.out.println("元素 3 的索引: " + index);
-
- // 同步集合
- List<String> syncList = Collections.synchronizedList(new ArrayList<>());
- syncList.add("a");
- syncList.add("b");
- System.out.println("同步集合: " + syncList);
- }
- }
उपयोगेनCollections
वर्गेन प्रदत्ताः एताः पद्धतयः संग्रहे विविधानि कार्याणि सहजतया कर्तुं शक्नुवन्ति, येन कोडस्य पठनीयता, परिपालनक्षमता च सुधरति ।