1
//接口的引用指向实现类的实例化对象
List list=new ArrayList();
//使用list.add()添加数据
list.add(2);
list.add("收费的都是");
list.add(3.4);
//list.size()查看数组长度——》3
System.out.println(list.size());
// list.get() 查看数组某个下标的对应值
//2
System.out.println(list.get(0));
//3.4
System.out.println(list.get(2));
//接口的引用指向实现类的实例化对象
List list=new ArrayList();
//使用list.add()添加数据
list.add(2);
list.add("收费的都是");
list.add(3.4);
//list.size()查看数组长度——》3
System.out.println(list.size());
// list.get() 查看数组某个下标的对应值
//2
System.out.println(list.get(0));
//3.4
System.out.println(list.get(2));
System.out.println(list.get(4));
3
2
3.4java.lang.IndexOutOfBoundsException: Index 4 out of bounds for length 3
此时数组下标越界,因为数组长度只有3
for循环遍历ArrayList
List list = new ArrayList<>();
// 使用for循环存入10个值
for (int i = 0; i <10 ; i++) {
list.add("王"+i);
}
//查看数组长度为10
System.out.println(list.size());
}
//i<list.size() :使i<数组的长度
for (int i = 0; i < list.size(); i++) {
//输出下标对应的元素
System.out.println(list.get(i));
}
王0 王1 王2 王3 王4 王5 王6 王7 王8 王9
ArrayList添加元素
List list = new ArrayList<>();
for (int i = 0; i <10 ; i++) {
list.add("王"+i);
}
System.out.println(list);
//向下标为2的添加数据
list.add(2,"2");
System.out.println(list);
[王0, 王1, 王2, 王3, 王4, 王5, 王6, 王7, 王8, 王9]
[王0, 王1, 2, 王2, 王3, 王4, 王5, 王6, 王7, 王8, 王9]
ArrayList移除元素
public void test011(){
List list = new ArrayList<>();
for (int i = 0; i <10 ; i++) {
list.add("王"+i);
}
System.out.println(list);
//移除下标为2的数据
list.remove(2);
System.out.println(list);
}
[王0, 王1, 王2, 王3, 王4, 王5, 王6, 王7, 王8, 王9]
[王0, 王1, 王3, 王4, 王5, 王6, 王7, 王8, 王9]
ArrayList修改元素
List list = new ArrayList<>();
for (int i = 0; i <10 ; i++) {
list.add("王"+i);
}
System.out.println(list);
//修改下标为3的值为 阿
list.set(3,"阿");
System.out.println(list);
[王0, 王1, 王2, 王3, 王4, 王5, 王6, 王7, 王8, 王9]
[王0, 王1, 王2, 阿, 王4, 王5, 王6, 王7, 王8, 王9]
foreach循环遍历ArrayList
List list = new ArrayList<>();
for (int i = 0; i <10 ; i++) {
list.add("王"+i);
}
//Object 集合中元素的数据类型
// name 遍历后集合中每一个元素的变量
// list 被遍历的集合
for (Object name:list) {
System.out.print(name+"\t");
}
王0 王1 王2 王3 王4 王5 王6 王7 王8 王9
// 泛型 可以简单理解为参数的数据类型 //<> 限定list集合中存储的数据类型 List<String> list = new ArrayList<>();
迭代器遍历结合
List<String> list=new ArrayList<>();
for (int i = 0; i <10 ; i++) {
list.add("王"+i);
}
//获取该集合的迭代器
//迭代器遍历后的数据不能重新迭代,相对安全一些
Iterator<String> it= list.listIterator();
while (it.hasNext()){
String next= it.next();
System.out.print(next+"\t");
}
System.out.println();
System.out.println("第一次遍历完成");
while (it.hasNext()){
String next= it.next();
System.out.print(next+"\t");
}
System.out.println("第二次遍历完成");
王0 王1 王2 王3 王4 王5 王6 王7 王8 王9
第一次遍历完成
第二次遍历完成