Arrays类
用于转换String格式和对指定类型的数组进行排序(还有个用到查找二分法的作用不会)
1.转换String格式:
设置一个指定类型的数组,然后使用方法:String str = Arrays.toString(arr);之后输出
int[] arr = { 10, 20, 30, 100, 120 ,200}; //目前测试int,double都可以char不太行。 String str = Arrays.toString(arr); System.out.println(str); double[] arr2 = { 3.14, 7.8, 10.9, 5.6 }; String str2 = Arrays.toString(arr2); System.out.println(str2); String[] arr3 = {"a","1","啊","值","是","我"};
2.排序:
2.排序 void sort(int[] a) // 对指定类型的数组按数字升序进行排序 从小到大 int , double, String 都可以进行排序 Arrays.sort(arr); String str3 = Arrays.toString(arr); System.out.println(str3); Arrays.sort(arr2); String str4 = Arrays.toString(arr2); System.out.println(str4); Arrays.sort(arr3); String str5 = Arrays.toString(arr3); System.out.println(str5);
ArrayList 特点:
1.本质是一个长度可变的数组
2.它的实现不是同步的,是异步的。
3.在该容器中可以存储null值。
4.每个ArrayList 实例都有一个容器。该容量是指用来储存列表元素的数组的大小 默认为10;
5.随着向 ArrayList 中不断添加元素,其容量也自动增长。
6.在迭代该容器过程中,不允许出现删除或者添加动作,如果执行了该类操作,那么程序会抛出并发修改异常。
7.元素是有序的
8.元素是可重复的
ArrayList的curd操作(增删改查):
ArrayList<String> list = new ArrayList<>();//获取ArrayList对象的格式 //list.add(e) 末尾添加 将指定元素添加到此列表的尾部 // 添加元素动作 尾部添加 list.add("张三");// 末尾添加 将指定的元素添加到此列表的尾部。 list.add("李四"); list.add("王五"); list.add("赵六"); list.add("田七"); // 遍历 for (int i = 0; i < list.size(); i++) {// 遍历容器中 变量i代表索引 // 获取arrayList中的元素 System.out.print(list.get(i) + " ");//张三 李四 王五 赵六 田七 }
System.out.println();//换行
//添加元素动作 指定位置添加
// (index < 0 || index > size()) 如果范围超出会抛出索引 越界异常
list.add(4, "王五");// 3-->第四个位置添加王五元素 后边元素后退 for (int i = 0; i < list.size(); i++) {//遍历容器 变量i代表索引 //获取arrayList中的元素 System.out.print(list.get(i) + " ");
}
System.out.printin();//换行
// 修改元素操作 set(int index,E element)用指定元素替代此类表中指定位置的元素 // (index < 0 || index> size()) list.set(5, "周八"); for (int i = 0; i < list.size(); i++) { //获取arraylist中的元素 System.out.print(list.get(i) + " "); }
// 删除元素操作remove() 移除此列表中指定位置的元素,后边的元素往前移 //remove(int index) 返回值就是容器中删除的元素 System.out.println(); String remove = list.remove(3);// 赵六 System.out.println(remove);
// 查找元素操作 get(int index) String str = list.get(3); System.out.println("索引值为3的元素为" + str);
// 获取arrayList容器中的长度值size () int size = list.size(); System.out.println("该容器的长度为:" + size);
转换成toArray类型:
//转换ArrayList容器为数组类型toArray()数组本身就是一种数据类型(引用数据类型) Object[] array = list.toArray(); // Object[]不能转换成String[] String Object for (int i = 0; i < array.length; i++) { // 获取ArrayList中的元素 System.out.print(array[i] + " "); }
// T type(类型) E element(元素) K key V value System.out.println(); // toArray(T[] a) String[] arr= {};//空数组不是null值 String[] array2 = list.toArray(arr); for (int i = 0; i < array2.length; i++) { // 获取ArrayList中的元素 System.out.print(array2[i] + " "); }
System.out.println();//换行
//清空arrayList容器所有元素 list.clear();
//验证arrayList容器中没有任何元素 长度为0 boolean empty = list.isEmpty(); System.out.println(empty);// ture 容器为空 false 容器不为空 int size2 = list.size(); System.out.println("次容器长度为"+ size2);