다음 편집기에서는 Java에서 일반적으로 사용되는 여러 컬렉션에 요소를 추가하는 효율성에 대해 간략하게 설명합니다. 에디터가 꽤 좋다고 생각해서 지금 공유해서 참고용으로 올려보겠습니다. 에디터를 따라가며 살펴보겠습니다.
비교해야 할 컬렉션을 초기화하고 100,000개의 요소를 균일하게 추가하고 전체 프로세스의 실행 시간을 가져옵니다.
1. 목록 컬렉션에 요소 추가
private static void testList() { List<Integer> list = new ArrayList<Integer>(); long startTime = System.currentTimeMillis(); // 获取开始时间 for (int i = 0; i < 100000; i++) { list.add(i); } long endTime = System.currentTimeMillis(); // 获取结束时间 System.out.println("List添加元素程序运行时间为:" + (endTime - startTime) + "ms"); // 输出程序运行时间 }
프로그램 출력:
목록에 100,000 추가 각 요소에 대한 프로그램의 실행 시간은 8ms
2. Set 컬렉션에 요소 추가
private static void testSet() { Set<Integer> set = new HashSet<Integer>(); long startTime = System.currentTimeMillis(); // 获取开始时间 for (int i = 0; i < 100000; i++) { set.add(i); } long endTime = System.currentTimeMillis(); // 获取结束时间 System.out.println("Set添加10万个元素程序运行时间为:" + (endTime - startTime) + "ms"); // 输出程序运行时间 }
프로그램 출력:
추가 설정 100,000개의 요소가 있는 프로그램의 실행 시간은 17ms
3 LinkedList 컬렉션에 요소 추가
private static void testLinkedList() { List<Integer> list = new LinkedList<Integer>(); long startTime = System.currentTimeMillis(); // 获取开始时间 for (int i = 0; i < 100000; i++) { list.add(i); } long endTime = System.currentTimeMillis(); // 获取结束时间 // 输出程序运行时间 System.out.println("LinkedList添加10万个元素程序运行时间为:" + (endTime - startTime) + "ms"); }
프로그램 출력:
LinkedList는 100,000개의 요소를 추가합니다. 프로그램 실행 시간은 8ms입니다.
4. TreeSet 컬렉션에 요소 추가
private static void testTreeSet() { Set<Integer> set = new TreeSet<Integer>(); long startTime = System.currentTimeMillis(); // 获取开始时间 for (int i = 0; i < 100000; i++) { set.add(i); } long endTime = System.currentTimeMillis(); // 获取结束时间 // 输出程序运行时间 System.out.println("TreeSet添加10万个元素程序运行时间为:" + (endTime - startTime) + "ms"); }
프로그램 출력:
TreeSet은 100,000개의 요소를 추가합니다. 프로그램 실행 시간은 40ms
요약: 중복 제거를 고려하지 않음 위의 몇 가지 일반적으로 사용되는 집합의 실행 효율성은 다음과 같습니다: ArrayList >= LinkedList > HashSet > TreeSet
5.
private static void testHashMap() { Map<Integer, Object> hashMap = new HashMap<Integer, Object>(); long startTime = System.currentTimeMillis(); // 获取开始时间 for (int i = 0; i < 100000; i++) { hashMap.put(i, "test"); } long endTime = System.currentTimeMillis(); // 获取结束时间 // 输出程序运行时间 System.out.println("HashMap添加10万个元素程序运行时间为:" + (endTime - startTime) + "ms"); }프로그램 출력:HashMap은 100,000개의 요소를 추가합니다. 프로그램 실행 시간은 17ms입니다.
6. private static void testTreeMap() {
Map<Integer, Object> treeMap = new TreeMap<Integer, Object>();
long startTime = System.currentTimeMillis(); // 获取开始时间
for (int i = 0; i < 100000; i++) {
treeMap.put(i, "test");
}
long endTime = System.currentTimeMillis(); // 获取结束时间
// 输出程序运行时间
System.out.println("TreeMap添加10万个元素程序运行时间为:" + (endTime - startTime) + "ms");
}
프로그램 출력:
TreeMap은 100,000개의 요소를 추가합니다. 프로그램 실행 시간은 40ms
요약: 고려하지 않음 정렬을 수행하면 HashMap의 실행 효율성이 TreeMap보다 높습니다. HashMap > [관련 추천]
1.
Java 무료 동영상 튜토리얼3. FastJson 튜토리얼 매뉴얼
위 내용은 6개 컬렉션에 요소를 추가하는 효율성을 간략하게 설명하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!