编写一个投票系统 要求: 开启4个线程,进行投票 票放入一个集合中 每个线程投票100张(循环100次,向集合中加入100个元素),投票完成后,控制台输出集合中的票数为400
时间: 2024-06-10 11:08:32 浏览: 74
好的,这是一个技术问题,我可以回答。以下是一个可供参考的投票系统的示例代码,其中使用了Java中的线程和集合:
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class VotingSystem {
public static void main(String[] args) {
List<String> votes = Collections.synchronizedList(new ArrayList<>());
Thread thread1 = new Thread(() -> {
for (int i = 0; i < 100; i++) {
votes.add("Candidate 1");
}
});
Thread thread2 = new Thread(() -> {
for (int i = 0; i < 100; i++) {
votes.add("Candidate 2");
}
});
Thread thread3 = new Thread(() -> {
for (int i = 0; i < 100; i++) {
votes.add("Candidate 3");
}
});
Thread thread4 = new Thread(() -> {
for (int i = 0; i < 100; i++) {
votes.add("Candidate 4");
}
});
thread1.start();
thread2.start();
thread3.start();
thread4.start();
try {
thread1.join();
thread2.join();
thread3.join();
thread4.join();
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Total number of votes: " + votes.size());
}
}
这个投票系统使用了4个线程分别投票,通过集合将每个选票加入总集合中,最后输出总投票数量为400张。注意,这只是一个示例代码,实际使用中还需要考虑并发问题和安全性。
阅读全文