java中的集合
2021/6/5 1:21:02
本文主要是介绍java中的集合,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
集合
- 集合框架
- 泛型
- List集合
- ArrayList类
- Vector类
- Stack类
- LinkedList类
集合框架
泛型
泛型是把类型明确的工作推迟到创建对象或调用方法的时候才去明确的特殊的类型。
确定类型后,集合里就不能加入别的类型的变量了。
类型擦除: java代码在编译成字节码时是不包含泛型中的类型信息的,这就叫做类型擦除。
List<String> list1=new ArrayList<String>(); List<Integer> list2=new ArrayList<Integer>(); System.out.println(list1.getClass()==list2.getClass());
结果:
true
List集合
源码:
可以看出List是一个接口,继承于Collection
一些方法
List的实现类:
-
ArrayList类
定义数组来存储数据
默认初始集合容量为10
字符串最大分配大小
如果超出范围会报OutOfMemeoryError
扩容,大小变成之前的1.5倍
// ArrayList List<String> list=new ArrayList<String>(); // 加入集合 list.add("a"); list.add("b"); list.add("c"); list.add("d"); System.out.println(list); //[a, b, c, d] // 删除数据 list.remove(1); //根据索引去删 删除了"b" System.out.println(list); list.remove("d"); //删除括号里的内容 如果这个元素没在集合里 集合不变 list.remove("f"); System.out.println(list); //[a, c] // 查找数据 System.out.println(list.get(0)); //根据索引查找数据 // 更改数据 list.set(0, "hh"); System.out.println(list); //[hh, c] // 其他操作 System.out.println(list.size()); //获得集合的大小 System.out.println(list.isEmpty()); //判断集合是否为空 System.out.println(list.contains("c")); //判断集合是否包含某个元素 list.clear(); //清空集合
-
Vector类
内部是由数组实现的
一些方法
-
Stack类
继承于Vector类
-
LinkedList类
双向链表实现数据的存储
List<String> list=new LinkedList<String>(); // 加入数据 list.add("a"); list.add("b"); list.add("c"); list.add("d"); System.out.println(list); //[a, b, c, d] // 删除数据 list.remove(0); //根据索引位置删除 list.remove("c"); //删除传入的值 list.remove("gg"); //删除一个不存在的值不会报错 System.out.println(list); //[b, d] // 得到数据 System.out.println(list.get(0)); //b 根据索引找 // 改数据 list.set(0, "gdhs"); //根据索引位置改数据 System.out.println(list); //[gdhs, d] // 其他操作 // 使用contains()方法的前提是equals()方法实现过了 System.out.println(list.contains("d")); //true System.out.println(list.isEmpty()); //false 是否为空 System.out.println(list.size()); //2 list的长度 list.clear(); //清空集合
这篇关于java中的集合的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-10-05小米13T Pro系统合集:性能与摄影的极致融合,值得你升级的系统ROM
- 2024-10-01基于Python+Vue开发的医院门诊预约挂号系统
- 2024-10-01基于Python+Vue开发的旅游景区管理系统
- 2024-10-01RestfulAPI入门指南:打造简单易懂的API接口
- 2024-10-01初学者指南:了解和使用Server Action
- 2024-10-01Server Component入门指南:搭建与配置详解
- 2024-10-01React 中使用 useRequest 实现数据请求
- 2024-10-01使用 golang 将ETH账户的资产平均分散到其他账户
- 2024-10-01JWT用户校验课程:从入门到实践
- 2024-10-01Server Component课程入门指南