Java 集合类型比较:List、Set 和 Map 的异同点 (代码示例)
Java 集合类型比较:List、Set 和 Map 的异同点 (代码示例)
本文将详细分析 Java 中 List、Set 和 Map 三种集合类型的异同点,并用代码示例说明了它们的特点和用法。
1. 相同点
- 都是集合类型,可以用于存储一组元素。
- 都可以存储不同类型的元素。
- 都支持增删改查等常见操作。
2. 不同点
- List 是有序的集合,元素可以重复,可以根据索引访问元素。
- Set 是无序的集合,元素不可重复,不能根据索引访问元素。
- Map 是键值对的集合,每个元素包含一个键和一个值,键不可重复,值可以重复。
3. 代码示例
import java.util.ArrayList;
import java.util.HashSet;
import java.util.HashMap;
public class CollectionDemo {
public static void main(String[] args) {
// List
ArrayList<String> list = new ArrayList<>();
list.add('apple');
list.add('banana');
list.add('cherry');
list.add('apple');
System.out.println('List: ' + list);
System.out.println('List size: ' + list.size());
System.out.println('List get(0): ' + list.get(0));
// Set
HashSet<String> set = new HashSet<>();
set.add('apple');
set.add('banana');
set.add('cherry');
set.add('apple');
System.out.println('Set: ' + set);
System.out.println('Set size: ' + set.size());
System.out.println('Set contains("banana"): ' + set.contains('banana'));
// Map
HashMap<Integer, String> map = new HashMap<>();
map.put(1, 'apple');
map.put(2, 'banana');
map.put(3, 'cherry');
map.put(1, 'orange');
System.out.println('Map: ' + map);
System.out.println('Map size: ' + map.size());
System.out.println('Map get(2): ' + map.get(2));
}
}
4. 输出结果
List: [apple, banana, cherry, apple]
List size: 4
List get(0): apple
Set: [cherry, banana, apple]
Set size: 3
Set contains("banana"): true
Map: {1=orange, 2=banana, 3=cherry}
Map size: 3
Map get(2): banana
通过以上代码示例,我们可以清楚地看到三种集合类型在存储、访问和操作元素方面的区别。在实际编程中,根据具体需求选择合适的集合类型可以提高代码效率和可读性。
原文地址: https://www.cveoy.top/t/topic/qe8R 著作权归作者所有。请勿转载和采集!