list是執行緒不安全的原因是因為底層沒有添加鎖
java.util.ConcurrentModificationException
at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:909)
at java.util.ArrayList$Itr.next(ArrayList.java:859)
at java.util.AbstractCollection.toString(AbstractCollection.java:461)
at java.lang.String.valueOf(String.java:2994)
at java.io.PrintStream.println(PrintStream.java:821)
at com.guigu.list.ThreadDemo04.lambda$main$0(ThreadDemo04.java:21)
at java.lang.Thread.run(Thread.java:748)
public class ThreadDemo04 {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
for (int i = 1; i <= 30; i++) {
new Thread(() -> {
list.add(UUID.randomUUID().toString().substring(0, 8));
System.out.println(list);
}, String.valueOf(i)).start();
}
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/401934.html
標籤:其他
