集合与数组的特点区别:
数组:
1.可以储存任意的数据类型(基本数据类型和引用数据类型)
2.数组长度是固定,不可改变
集合:
1.只能放基本数据类型
2.长度可变
而数据结构不同将集合分为不同类型
public class Demo01{
public static void main (String [] agrs){
//创建对象. 多态写法
Collection<String> c = new ArrayList<>();
//用add方法添加数据
add.c("Hello");
add.c("world");
//展示结果
System.out.println(c);
}
}
值得一提的是ArrayList 底层代码重写过toString()方法;
遍历集合的方式:
1.转数组:
2.迭代器:不能使用集合进行增删操作否者报错
3.增强for循环(语法糖):在此循环中 不能使用集合进行增删操作否者报错
List集合特点:
1.有序寸和取得顺序是一致的
2.有重复,可以存放重复的元素
3.有索引,拥有带索引的方法
List集合遍历方式:
1.转数组
2.迭代器
3.增强for
4.普通for
ArrayList集合删除需要注意什么呢:
更改集合操作不要在迭代器和增强for循环中进行,更改集合内容,长度会发生变化
LinkedList集合:增删快,查询慢
set集合特点:(与list集合相反)
1.无序
2.无重复
3.无索引
也就是说set集合底层代码自动去重,可用set在某些场景去重
TreeSet集合:会自动去重切排序。