JavaRush /ื‘ืœื•ื’ Java /Random-HE /10 ื”ืฉืืœื•ืช ื”ืžื•ื‘ื™ืœื•ืช ืขืœ ืื•ืกืคื™ื ื‘-Java
FedoraLinux
ืจึธืžึธื”
ะœะพัะบะฒะฐ

10 ื”ืฉืืœื•ืช ื”ืžื•ื‘ื™ืœื•ืช ืขืœ ืื•ืกืคื™ื ื‘-Java

ืคื•ืจืกื ื‘ืงื‘ื•ืฆื”
ื”ืžืืžืจ ื”ื•ื ืชืจื’ื•ื ืฉืœ ื”ืžืืžืจ " 10 ื”ืฉืืœื•ืช ื”ืžื•ื‘ื™ืœื•ืช ืขืœ ืื•ืกืคื™ Java " . ืœื”ืœืŸ ื”ืฉืืœื•ืช ื”ืคื•ืคื•ืœืจื™ื•ืช ื‘ื™ื•ืชืจ ืขืœ ืื•ืกืคื™ื ื‘-Java, ืฉื ืฉืืœื• ื•ื ื“ื•ื ื• ื‘-Stackowerflow. ืœืคื ื™ ืฉืชืกืชื›ืœ ืขืœ ื”ืฉืืœื•ืช ื”ืืœื”, ื™ื”ื™ื” ื˜ื•ื‘ ืœื”ืกืชื›ืœ ืขืœ ื“ื™ืื’ืจืžืช ื”ื”ื™ืจืจื›ื™ื” ืฉืœ ื”ื›ื™ืชื”. 1. ืžืชื™ ืœื”ืฉืชืžืฉ ื‘-LinkedList ื‘ืžืงื•ื ื‘-ArrayList? ArrayList ื”ื•ื ืœืžืขืฉื” ืžืขืจืš; ื ื™ืชืŸ ืœื’ืฉืช ื™ืฉื™ืจื•ืช ืœืืœืžื ื˜ื™ื ืฉืœื• ื‘ืืžืฆืขื•ืช ืื™ื ื“ืงืก. ืื ื”ืžืขืจืš ืขื•ืœื” ืขืœ ื’ื“ื•ืชื™ื•, ื™ื”ื™ื” ืฆื•ืจืš ื‘ืžืขืจืš ื—ื“ืฉ ืขื ื™ื•ืชืจ ืžืงื•ื. ืžื™ืงื•ื ื•ื”ื–ื–ื” ืฉืœ ื›ืœ ื”ืืœืžื ื˜ื™ื ื™ื™ืงื— ื–ืžืŸ O(n). ื›ืžื• ื›ืŸ, ื”ื•ืกืคื” ื•ื”ืกืจื” ืฉืœ ืืœืžื ื˜ื™ื ื ื—ื•ืฆื” ื›ื“ื™ ืœื”ืขื‘ื™ืจ ืืœืžื ื˜ื™ื ืงื™ื™ืžื™ื ื‘ืžืขืจืš. ื–ื• ืื•ืœื™ ืื™ ื”ื ื•ื—ื•ืช ื”ื’ื“ื•ืœื” ื‘ื™ื•ืชืจ ื‘ืฉื™ืžื•ืฉ ื‘- ArrayList. LinkedList ื”ื™ื ืจืฉื™ืžื” ื›ืคื•ืœื” ืฉืœ ืงื™ืฉื•ืจื™ ืืœืžื ื˜ื™ื. ืœืคื™ื›ืš, ื›ื“ื™ ืœื’ืฉืช ืœืืœืžื ื˜ ืฉื‘ืžืจื›ื–, ืขืœื™ืš ืœื—ืคืฉ ืžื”ื”ืชื—ืœื” ื•ืขื“ ื”ืกื•ืฃ ืฉืœ ื”ื’ื™ืœื™ื•ืŸ. ืžืฆื“ ืฉื ื™, ื”ื•ืกืคื” ื•ื”ืกืจื” ืฉืœ ืืœืžื ื˜ ื‘-LinkedList ื”ื™ื ืžื”ื™ืจื” ื™ื•ืชืจ ืžื›ื™ื•ื•ืŸ ืฉืคืขื•ืœื•ืช ืืœื• ืจืง ืžืฉื ื•ืช ืืช ื”ืจืฉื™ืžื” ืขืฆืžื”. ืœื”ืœืŸ ื”ืฉื•ื• ื”ื–ืžื ื™ื ื”ื’ืจื•ืขื™ื ื‘ื™ื•ืชืจ:
ืฉื™ื˜ื” ืจืฉื™ืžืช ืžืขืจืš ืจืฉื™ืžื” ืžืงื•ืฉืจืช
get(index) O(1) ืขึทืœ)
ื”ื•ืกืฃ (E) ืขึทืœ) O(1)
add(E, index) ืขึทืœ) ืขึทืœ)
ืœื”ืกื™ืจ (ืื™ื ื“ืงืก) ืขึทืœ) ืขึทืœ)
Iterator.remove() ืขึทืœ) O(1)
Iterator.add(E) ืขึทืœ) O(1)
ืœืžืจื•ืช ื–ืžืŸ ื”ืจื™ืฆื”, ื”ืฉื™ืžื•ืฉ ื‘ื–ื™ื›ืจื•ืŸ ื—ื™ื™ื‘ ืœื”ื™ื—ืฉื‘ ื‘ื ืคืจื“ ืขื‘ื•ืจ ืจืฉื™ืžื•ืช ื’ื“ื•ืœื•ืช. ื‘-LinkedList, ืœื›ืœ ืฆื•ืžืช ื—ื™ื™ื‘ื™ื ืœื”ื™ื•ืช ืœืคื—ื•ืช ืฉื ื™ ืžืฆื‘ื™ืขื™ื ื ื•ืกืคื™ื ื›ื“ื™ ืœืงืฉืจ ืืช ื”ืฆืžืชื™ื ื”ืงื•ื“ืžื™ื ื•ื”ื‘ืื™ื, ื‘ืขื•ื“ ืฉื‘-ArrayList ื™ืฉ ืฆื•ืจืš ื‘ืžืขืจืš ืฉืœ ืืœืžื ื˜ื™ื ื‘ืœื‘ื“. ื”ืฉื•ื•ืื•ืช ื ื•ืกืคื•ืช ืฉืœ ืจืฉื™ืžื•ืช ArrayList, LinkedList ื•-Vector . 2. ืžืงื‘ื™ืœื” ื™ืขื™ืœื” ืœื”ืกืจืช ืืœืžื ื˜ื™ื ื‘ืžื”ืœืš ืื™ื˜ืจืฆื™ื” ืฉืœ ืื•ืกืฃ ื”ื“ืจืš ื”ื ื›ื•ื ื” ื”ื™ื—ื™ื“ื” ืœืฉื ื•ืช (ืœื”ืกื™ืจ ืืœืžื ื˜ื™ื) ืื•ืกืฃ ื‘ืžื”ืœืš ืื™ื˜ืจืฆื™ื” ื”ื™ื ืœื”ืฉืชืžืฉ ื‘-Iterator.remove() . ืœื“ื•ื’ืžื”: ื”ืฉื’ื™ืื” ื”ื ืคื•ืฆื” ื‘ื™ื•ืชืจ ื”ื™ื: ืชืงื‘ืœ ConcurrentModificationException ื‘ื–ืžืŸ ื”ืคืขืœืช ื”ืงื•ื“ ืœืžืขืœื”. ื–ื” ืงื•ืจื” ื‘ื’ืœืœ ืฉื”ืื™ื˜ืจื˜ื•ืจ ื ื•ืฆืจ ื›ื“ื™ ืœืขื‘ื•ืจ ื‘ืจืฉื™ืžื” ื›ื•ืœื”, ืื‘ืœ ื‘ืื•ืชื• ื–ืžืŸ ื”ื’ื™ืœื™ื•ืŸ ืžืฉืชื ื” ืขืœ ื™ื“ื™ ืงืจื™ืื” ืœ-Iterator.remove(). ื›ืคื™ ืฉื ื›ืชื‘ ื‘ืชื™ืขื•ื“ ืœื—ืจื™ื’ ื–ื”, Iterator itr = list.iterator(); while(itr.hasNext()) { // do something itr.remove(); } for(Integer i: list) { list.remove(i); }
"ืœื ืžื•ืชืจ ื‘ื“ืจืš ื›ืœืœ ืœืฉืจืฉื•ืจ ืื—ื“ ืœืฉื ื•ืช ืื•ืกืฃ ื‘ื–ืžืŸ ืฉืจืฉื•ืจ ืื—ืจ ื—ื•ื–ืจ ืขืœื™ื•."
ื‘ืื•ืคืŸ ื›ืœืœื™, ื–ื” ืœื ืžืงื•ื‘ืœ ืฉืฉืจืฉื•ืจ ืื—ื“ ื™ืฉื ื” ืื•ืกืฃ ื‘ื–ืžืŸ ืฉืจืฉื•ืจ ืื—ืจ ื—ื•ืฆื” ืื•ืชื•. 3. ื›ื™ืฆื“ ืœื”ืžื™ืจ ืจืฉื™ืžื” ืœืžืขืจืš int[]? ื”ื“ืจืš ื”ืงืœื” ื‘ื™ื•ืชืจ ืœืขืฉื•ืช ื–ืืช ื”ื™ื ืœื”ืฉืชืžืฉ ื‘-ArrayUtils , ื”ืžืžื•ืงื ื‘ืกืคืจื™ื™ืช Apache Commons Lang . int[] array = ArrayUtils.toPrimitive(list.toArray(new Integer[0])); ืื™ืŸ ืงื™ืฆื•ืจ ื“ืจืš ืœื‘ื™ื˜ื•ื™ ื–ื” ื‘-JDK. ื–ื›ื•ืจ ืฉืื™ื ืš ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘- List.toArray() ืžื›ื™ื•ื•ืŸ ืฉื”ื‘ื™ื˜ื•ื™ ื”ื–ื” ืžืžื™ืจ ืจืฉื™ืžื” ืœืžืกืคืจ ืฉืœื[] (ืฉืื™ื ื ื• ืกื•ื’ ืคืจื™ืžื™ื˜ื™ื‘ื™). ื”ื“ืจืš ื”ื ื›ื•ื ื” ืชื”ื™ื” ื”ืืคืฉืจื•ืช ื”ื‘ืื”: int[] array = new int[list.size()]; for(int i=0; i < list.size(); i++) { array[i] = list.get(i); } 4. ื›ื™ืฆื“ ืœื”ืžื™ืจ ืžืขืจืš int[] ืœืจืฉื™ืžื”? ื”ื“ืจืš ื”ืงืœื” ื‘ื™ื•ืชืจ ื”ื™ื ื’ื ืœื”ืฉืชืžืฉ ื‘-ArrayUtils ื‘ืกืคืจื™ื™ืช Apache Commons Lang , ื›ืžื• ืœืขื™ืœ. List list = Arrays.asList(ArrayUtils.toObject(array)); ื›ืžื• ื›ืŸ, ืื™ืŸ ืงื™ืฆื•ืจ ื“ืจืš ืœื‘ื™ื˜ื•ื™ ื–ื” ื‘-JDK. 5. ืžื”ื™ ื”ื“ืจืš ื”ื˜ื•ื‘ื” ื‘ื™ื•ืชืจ ืœืกื ืŸ ืืช ื”ืื•ืกืฃ? ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ื—ื‘ื™ืœื•ืช ืฉืœ ืฆื“ ืฉืœื™ืฉื™ ื›ื’ื•ืŸ Guava ืื• Apache Commons Lang ื›ื“ื™ ืœื”ื’ื‘ื™ืจ ืืช ื”ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช. ืœืฉืชื™ ื”ื—ื‘ื™ืœื•ืช ื”ืœืœื• ื™ืฉ ืฉื™ื˜ืช filter() (ื‘ืžื—ืœืงื” Collections2 ืž-Guava ื•- CollectionUtils ืž-Apache). ืฉื™ื˜ืช filter() ืชื—ื–ื™ืจ ืืœืžื ื˜ื™ื ื”ืชื•ืืžื™ื ืœืคืจื“ื™ืงื˜ ื”ื ืชื•ืŸ. ื‘-JDK ื”ื›ืœ ื™ื•ืชืจ ืžืกื•ื‘ืš. ื”ื—ื“ืฉื•ืช ื”ื˜ื•ื‘ื•ืช ื”ืŸ ืฉื”ืคืจื“ื™ืงื˜ื™ื ื™ืชื•ื•ืกืคื• ื‘-Java 8 , ืืš ืœืขืช ืขืชื” ืขืœื™ื›ื ืœื”ืฉืชืžืฉ ื‘-Iterator ื›ื“ื™ ืœื—ื–ื•ืจ ืขืœ ื›ืœ ื”ืื•ืกืฃ. ื›ืžื•ื‘ืŸ, ืืชื” ื™ื›ื•ืœ ืœื—ืงื•ืช ืืช ื”ื ืชื™ื‘ ืฉืื—ืจื™ื• ืขื•ืงื‘ื™ื Guava ื•- Apache ืขืœ ื™ื“ื™ ื”ื™ื›ืจื•ืช ืขื ืžืžืฉืง Predicate ื”ื—ื“ืฉ. ื›ืขืช ื ื•ื›ืœ ืœื”ืฉืชืžืฉ ื‘ืงื•ื“ ื”ื‘ื ื›ื“ื™ ืœืกื ืŸ ืืช ื”ืื•ืกืฃ: 6. ื›ื™ืฆื“ ืœื”ืžื™ืจ ื‘ืงืœื•ืช ืจืฉื™ืžื” ืœืกื˜? ื™ืฉื ืŸ ืฉืชื™ ื“ืจื›ื™ื ืœืขืฉื•ืช ื–ืืช, ืชืœื•ื™ ืื™ืš ืืชื” ืจื•ืฆื” ืœื”ื’ื“ื™ืจ ืฉื•ื•ื™ื•ืŸ. ืงื˜ืข ื”ืงื•ื“ ื”ืจืืฉื•ืŸ ืžื›ื ื™ืก ืืช ื”ืจืฉื™ืžื” ืœ-HashSet. ื”ื›ืคื™ืœื•ืช ื‘ืžืงืจื” ื–ื” ื ืงื‘ืขืช ื‘ืขื™ืงืจ ืขืœ ื™ื“ื™ hashCode(). ื‘ื“ืจืš ื›ืœืœ ื–ื” ื™ืขื‘ื•ื“. ืื‘ืœ ืื ืืชื” ืฆืจื™ืš ืœืงื—ืช ื‘ื—ืฉื‘ื•ืŸ ืืช ื ืชื™ื‘ ื”ื”ืฉื•ื•ืื”, ืื– ืขื“ื™ืฃ ืœื”ืฉืชืžืฉ ื‘ื—ืœืง ื”ืฉื ื™ ืฉืœ ื”ืงื•ื“, ืฉื‘ื• ืืชื” ื™ื›ื•ืœ ืœื”ื’ื“ื™ืจ ืืช ื”ืžืฉื•ื•ื” ืฉืœืš. 7. ื›ื™ืฆื“ ืื•ื›ืœ ืœื”ืกื™ืจ ืจื›ื™ื‘ื™ื ื›ืคื•ืœื™ื ืž-ArrayList? ืฉืืœื” ื–ื• ืงืฉื•ืจื” ื‘ืžื™ื“ื” ืžืกื•ื™ืžืช ืœืฉืืœื” ืฉืœืžืขืœื”. ืื ืกื“ืจ ื”ืืœืžื ื˜ื™ื ื‘-ArrayList ืœื ืžืฉื ื” ืœืš, ืฆืขื“ ื—ื›ื ื™ื”ื™ื” ืœืžืงื ืืช ื”ื’ื™ืœื™ื•ืŸ ื‘-Set ื›ื“ื™ ืœื”ืกื™ืจ ื›ืคื™ืœื•ื™ื•ืช, ื•ืœืื—ืจ ืžื›ืŸ ืœื”ื—ื–ื™ืจ ืื•ืชื• ืœ-List. ืœื”ืœืŸ ื“ื•ื’ืžื”. ืื ืกื“ืจ ื”ืืœืžื ื˜ื™ื ื—ืฉื•ื‘ ืœืš, ืื– ื ื™ืชืŸ ืœื”ื‘ื˜ื™ื— ืืช ื”ืกื“ืจ ืขืœ ื™ื“ื™ ื”ืฆื‘ืช ื”ืจืฉื™ืžื” ื‘- LinkedHashSet , ืฉื ืžืฆื ื‘-JDK ื”ืกื˜ื ื“ืจื˜ื™. 8. ืื•ืกืฃ ืžืžื•ื™ืŸ int[] array = {1,2,3,4,5}; List list = new ArrayList (); for(int i: array) { list.add(i); } Iterator itr = list.iterator(); while(itr.hasNext()) { int i = itr.next(); if (i > 5) { // filter all ints bigger than 5 itr.remove(); } } public interface Predicate { boolean test(T o); } public static void filter(Collection collection, Predicate predicate) { if ((collection != null) && (predicate != null)) { Iterator itr = collection.iterator(); while(itr.hasNext()) { T obj = itr.next(); if (!predicate.test(obj)) { itr.remove(); } } } } filter(list, new Predicate () { public boolean test(Integer i) { return i <= 5; } }); Set set = new HashSet (list); Set set = new TreeSet (aComparator); set.addAll(list); ArrayList** list = ... // initial a list with duplicate elements Set set = new HashSet (list); list.clear(); list.addAll(set); ื™ืฉื ืŸ ืžืกืคืจ ื“ืจื›ื™ื ืœืชืžื•ืš ื‘ืื•ืกืฃ ืžืžื•ื™ืŸ ื‘-Java. ื›ื•ืœื ืžืกืคืงื™ื ืื•ืกืฃ ื‘ืกื“ืจ ื˜ื‘ืขื™ ืื• ืœืคื™ ืžืฉื•ื•ื” ืžื•ื’ื“ืจ. ื‘ืžืงืจื” ืฉืœ ืกื“ืจ ื˜ื‘ืขื™, ืืชื” ื’ื ืฆืจื™ืš ืœื™ื™ืฉื ืืช ืžืžืฉืง Comparable ืขืœ ื”ืืœืžื ื˜.
  1. Collections.sort() ื™ื›ื•ืœ ืœืžื™ื™ืŸ ืจืฉื™ืžื”. ื›ืคื™ ืฉืฆื•ื™ืŸ ื‘ืชื™ืขื•ื“ Java, ืžื™ื•ืŸ ื–ื” ื™ืฆื™ื‘ ื•ืžื‘ื˜ื™ื— ื‘ื™ืฆื•ืขื™ื ืฉืœ n log(n).
  2. PriorityQueue ืžืกืคืง ืชื•ืจ ืžืกื•ื“ืจ. ื”ื”ื‘ื“ืœ ื‘ื™ืŸ PriorityQueue ืœื‘ื™ืŸ Collections.sort() ื”ื•ื ืฉ-PriorityQueue ืฉื•ืžืจ ืขืœ ืกื“ืจ ื”ืชื•ืจ ื›ืœ ื”ื–ืžืŸ, ืื‘ืœ ืืชื” ื™ื›ื•ืœ ืœืงื‘ืœ ืจืง ืืช ื”ืืœืžื ื˜ ื”ืจืืฉื•ืŸ ืฉืœ ื”ืชื•ืจ. ืืชื” ืœื ื™ื›ื•ืœ ืœื’ืฉืช ื‘ืื•ืคืŸ ืืงืจืื™ ืœืจื›ื™ื‘ ื›ืžื• PriorityQueue.get(4).
  3. ืื ืื™ืŸ ื›ืคื™ืœื•ื™ื•ืช ื‘ืื•ืกืฃ, ืืชื” ื™ื›ื•ืœ ืœื‘ื—ื•ืจ TreeSet . ื›ืžื• ื›ืŸ, ื›ืžื• PriorityQueue, TreeSet ืฉื•ืžืจ ืขืœ ืกื˜ ืžืกื•ื“ืจ ื‘ื›ืœ ืขืช. ืืชื” ื™ื›ื•ืœ ืœืงื‘ืœ ืืช ื”ืืœืžื ื˜ ื”ืงื˜ืŸ ืื• ื”ื’ื“ื•ืœ ื‘ื™ื•ืชืจ ืž-TreeSet, ืื‘ืœ ืขื“ื™ื™ืŸ ืœื ืชื”ื™ื” ืœืš ื’ื™ืฉื” ืืงืจืื™ืช ืœืืœืžื ื˜ื™ื.
ื‘ืžื™ืœื™ื ืคืฉื•ื˜ื•ืช, Collections.sort() ืžืกืคืง ืจืฉื™ืžื” ืžืกื•ื“ืจืช ื—ื“ ืคืขืžื™ืช. PriorityQueue ื•-TreeSet ืฉื•ืžืจื™ื ืขืœ ืื•ืกืฃ ืžืกื•ื“ืจ ื‘ื›ืœ ืขืช, ื‘ืžื—ื™ืจ ืฉืœ ื—ื•ืกืจ ื’ื™ืฉื” ืœืื™ื ื“ืงืก ืœืืœืžื ื˜ื™ื. 9. Collections.emptyList() ืื• ืžื•ืคืข ื—ื“ืฉ. ืื•ืชื” ืฉืืœื” ื—ืœื” ืขืœ emptyMap() ื•-emptySet(). ืฉืชื™ ื”ืฉื™ื˜ื•ืช ืžื—ื–ื™ืจื•ืช ืจืฉื™ืžื” ืจื™ืงื”, ืื‘ืœ Collections.emptyList() ื”ื™ื ืจืฉื™ืžื” ื‘ืœืชื™ ื ื™ืชื ืช ืœืฉื™ื ื•ื™. ืžืฉืžืขื•ืช ื”ื“ื‘ืจ ื”ื™ื ืฉืื™ื ืš ื™ื›ื•ืœ ืœื”ื•ืกื™ืฃ ืืœืžื ื˜ื™ื ื—ื“ืฉื™ื ืœืจืฉื™ืžื” "ืจื™ืงื”". ื‘ืจืงืข, ื›ืœ ืงืจื™ืื” ืœืžืชื•ื“ื” Collections.emptyList() ืœื ื™ื•ืฆืจืช ืœืžืขืฉื” ืžื•ืคืข ื—ื“ืฉ ืฉืœ ื”ืจืฉื™ืžื” ื”ืจื™ืงื”. ื‘ืžืงื•ื ื–ืืช, ื”ื•ื ื™ืขืฉื” ืฉื™ืžื•ืฉ ื—ื•ื–ืจ ื‘ืžื•ืคืข ื”ืจื™ืง ืฉื›ื‘ืจ ืงื™ื™ื. ืื ืืชื ืžื›ื™ืจื™ื ืืช Singleton ื›ืชื‘ื ื™ืช ืขื™ืฆื•ื‘ื™ืช , ื›ื“ืื™ ืฉืชื‘ื™ื ื• ืœืžื” ื”ื›ื•ื•ื ื”. ื–ื” ืืžื•ืจ ืœืชืช ืœืš ื‘ื™ืฆื•ืขื™ื ื˜ื•ื‘ื™ื ื™ื•ืชืจ ืื ืงื•ืจืื™ื ืœืš ืœืขืชื™ื ืงืจื•ื‘ื•ืช. 10 ื”ืขืชืงืช ืื•ืกืฃ, Collections.copy() ืงื™ื™ืžื•ืช ืฉืชื™ ื“ืจื›ื™ื ืœื”ืขืชื™ืง ืจืฉื™ืžืช ืžืงื•ืจื•ืช ืœืจืฉื™ืžืช ื™ืขื“ื™ื. ื“ืจืš ืื—ืช ื”ื™ื ืœื”ืฉืชืžืฉ ื‘ื‘ื ืื™ ArrayList. ื“ืจืš ื ื•ืกืคืช ื”ื™ื ืœื”ืฉืชืžืฉ ื‘ืฉื™ื˜ืช Collections.copy() . ืฉื™ื ืœื‘ ื‘ืฉื•ืจื” ื”ืจืืฉื•ื ื”: ืื ื• ืžืงืฆื™ื ืจืฉื™ืžื” ืฉืื•ืจื›ื” ืœืคื—ื•ืช ื–ื”ื” ืœืื•ืจื›ื” ืฉืœ ื”ืจืฉื™ืžื” ื”ืžืงื•ืจื™ืช, ืžื›ื™ื•ื•ืŸ ืฉืชื™ืขื•ื“ Java ืขืœ ืื•ืกืคื™ื ืื•ืžืจ: ArrayList dstList = new ArrayList (srcList);
ืจืฉื™ืžืช ื”ื™ืขื“ ื—ื™ื™ื‘ืช ืœื”ื™ื•ืช ืืจื•ื›ื” ืœืคื—ื•ืช ื›ืžื• ืจืฉื™ืžืช ื”ืžืงื•ืจื•ืช.
ืžื” ืฉืื•ืžืจ ืฉื”ืจืฉื™ืžื” ื”ืกื•ืคื™ืช ื—ื™ื™ื‘ืช ืœื”ื™ื•ืช ืœื ืงืฆืจื” ืžื”ืจืฉื™ืžื” ื”ืžืงื•ืจื™ืช. ืฉืชื™ ื”ืฉื™ื˜ื•ืช ื”ืŸ ื”ืขืชืงื” ืจื“ื•ื“ื”. ืื– ืžื” ื”ื”ื‘ื“ืœ ื‘ื™ืŸ ืฉืชื™ ื”ืฉื™ื˜ื•ืช ื”ืœืœื•? ืจืืฉื™ืช, Collections.copy() ืœื ื™ืงืฆื” ืžื—ื“ืฉ ืืช ืงื™ื‘ื•ืœืช ื”ืื™ืกื•ืฃ ืฉืœ dstList, ื’ื ืื ืœ-dstList ืื™ืŸ ืžืกืคื™ืง ืžืงื•ื ืœื”ื›ื™ืœ ืืช ื›ืœ ื”ืืœืžื ื˜ื™ื ืžื”-srcList. ื‘ืžืงื•ื ื–ืืช, ื”ื•ื ื™ื–ืจื•ืง IndexOutOfBoundsException . ืืคืฉืจ ืœืฉืื•ืœ ืื ื™ืฉ ื‘ื–ื” ืชื•ืขืœืช. ื”ืกื™ื‘ื” ื”ื™ื ืฉื–ื” ืžื‘ื˜ื™ื— ืฉื”ืฉื™ื˜ื” ืคื•ืขืœืช ื‘ืื•ืคืŸ ืœื™ื ื™ืืจื™ ื‘ื–ืžืŸ. ื–ื” ืžืชืื™ื ื’ื ื›ืืฉืจ ืืชื” ืจื•ืฆื” ืœืขืฉื•ืช ืฉื™ืžื•ืฉ ื—ื•ื–ืจ ื‘ืžืขืจื›ื™ื ื‘ืžืงื•ื ืœื”ืงืฆื•ืช ืžื—ื“ืฉ ื–ื™ื›ืจื•ืŸ ื‘ื‘ื ืื™ ArrayList. ื‘ืžืงื•ื ืžืกืงื ื” ืื ืœืื—ืจ ืงืจื™ืืช ื”ืžืืžืจ ืขื“ื™ื™ืŸ ื™ืฉ ืœืš ืฉืืœื•ืช, ืืชื” ืžื•ื–ืžืŸ ืœืฉืื•ืœ ืื•ืชืŸ ื‘ืชื’ื•ื‘ื•ืช. ื›ืžื• ื›ืŸ, ืื ืชืžืฆื ืื™ ื“ื™ื•ืง ื‘ืชืจื’ื•ื ืื• ื›ืœ ื˜ืขื•ืช ืื—ืจืช, ื›ืชื•ื‘ ืœืจืืฉ ื”ืžืžืฉืœื”, ื–ื” ื™ืชื•ืงืŸ, ื•ืชื•ื“ื” ืœืš. ืžึฐืงื•ึนืจึดื™. ArrayList dstList = new ArrayList (srcList.size()); Collections.copy(dstList, srcList);
ื”ืขืจื•ืช
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION