List集合:存放的数据可以重复,并且有顺序
ArrayList:底层是Object数组,增删很慢,查询很快
取数据:取单个用get方法 全部用高级for或者入
/
package com.java.demo;
import java.util.ArrayList;
public class CollectionDemo1 {
public static void main(String[] args) {
//集合不能存放基本数据类型
ArrayList aList=new ArrayList();//括号里可写数据可不写
//第一种添加方法:依次在后面加上
aList.add("java从入门到放弃");
aList.add("mysql从删库到跑路");
aList.add("猪猪是靓妹");
aList.add(true);//Boolean
aList.add(12);//Interger
aList.add(34.2F);//Float
//取出数据
Object data1=aList.get(0);//返回值Object类型// 打印data1 java从入门到放弃
Object data2=aList.get(1);// 打印 data2 mysql从删库到跑路
System.out.println("data1 "+data1);
System.out.println("data2 "+data2);
int len=aList.size();//获取集合长度
System.out.println("data3"+"\t"+aList.get(len-1));// 打印 data3 34.2
System.out.println("data4"+"\t"+aList.get(len-2));// 打印 data4 12
//遍历集合
//高级for循环:
//for (数据类型 变量名:集合/数组){}
for (Object temp:aList){//java从入门到放弃 mysql从删库到跑路 猪猪是靓妹 true 12 34.2
System.out.print(temp+"\t");
}
System.out.println("\n----------------------");
//在指定下标插入(添加)数据
aList.add(1,"sm从入门到捆绑 ");//java从入门到放弃 sm从入门到捆绑 mysql从删库到跑路 猪猪是靓妹 true 12 34.2
aList.set(0,"哈哈哈哈哈傻逼");//修改
aList.remove(4);//根据下标删除
// lambda表达式:
// 集合名.forEach(temp->{}); //temp- 这个地方可以随便写
aList.forEach(aaa->{ //java从入门到放弃 mysql从删库到跑路 猪猪是靓妹 true 12 34.2
System.out.print(aaa+"\t");
});
System.out.println("\n----------------------");
//或者:
for (int i=0;i<aList.size();i++){//java从入门到放弃sm从入门到捆绑 mysql从删库到跑路猪猪是靓妹true1234.2
System.out.print(aList.get(i));
}
}
}
/
package com.java.demo;
import java.util.ArrayList;
public class CollectionDemo2 {
public static void main(String[] args) {
//泛型:给集合指定具体存放的数据类型,保证程序安全
ArrayList<String> aList=new ArrayList<String>();
aList.add("老王");
aList.add("大星");
//aList.add(10);
aList.add("大头");
//根据下标删除
//aList.remove(0);
//根据内容删除
aList.remove("老王");
//aList.remove((Object) 10);//不写Object会报错//数组下标越界
aList.forEach(temp->{
System.out.println(temp+"\t");
});
}
}
/
/
添加:aList.add()
修改:aList.set()
删除:aList.remove()
获取:aList.get()