java复制list,javalist,package cn.o
分享于 点击 16069 次 点评:252
java复制list,javalist,package cn.o
package cn.outofmemory.snippets.core;import java.util.ArrayList;import java.util.Collections;import java.util.List;public class SafeListCopy extends Object { public static void output(String[] word) { System.out.println("characters=" + word.length); for (int i = 0; i < word.length; i++) { System.out.println("word[" + i + "]=" + word[i]); } } public static void main(String[] args) { List wordList = Collections.synchronizedList(new ArrayList()); wordList.add("OutOfMemory.CN"); wordList.add("is"); wordList.add("cool!"); String[] aword = (String[]) wordList.toArray(new String[0]); output(aword); String[] bword; synchronized (wordList) { int size = wordList.size(); bword = new String[size]; wordList.toArray(bword); } output(bword); String[] cword; synchronized (wordList) { cword = (String[]) wordList.toArray(new String[wordList.size()]); } output(cword); }}
输出:
characters=3word[0]=OutOfMemory.CNword[1]=isword[2]=cool!characters=3word[0]=OutOfMemory.CNword[1]=isword[2]=cool!characters=3word[0]=OutOfMemory.CNword[1]=isword[2]=cool!
用户点评