一、数组
特点
- 一旦初始化以后,其长度就不可以修改
- 数组操作添加,删除,插入非常不便,效率不高
- 存储数据: 有序、可重复
- 元素必须为同一种类型
初始化
1.动态初始化
数据类型 [ ] 数组名称 = new 数据类型[数组长度]
2.静态初始化
数据类型 [ ] 数组名称 = new 数据类型[ ]{元素1,元素2,元素3…}
3.静态初始化省略格式
数据类型 [ ] 数组名称 = {元素1,元素2,元素3…}
代码举例说明
//1.动态初始化String[] strs = new String[5];strs[0] = "0000";strs[1] = "1111";//2.静态初始化String[] strs = new String[]{"000","111","222"};String[] strs = {"000","111","222"};//3.至于数据中有什么方法?//在ide中试一下就知道了,如strs.length
方法中数组
方法中参数,对于个数未知的,0或者多个的情况下,可以使用数组…的方式表达
public void list(Object... props) {}public void list(Integer... props) {}
二、集合Collection
一个人,就是基本数据类型或者一个对象
多个人,就是集体,家庭,集合喽
本章只列出常用的几个集合,你要纠结搞研究,搞深奥,请移步度娘哦

1. List集合
List是Collection最常用的子接口,允许保存重复元素,同时List接口对Collection接口方法进行扩充。
1.1 ArrayList子类
ArrayList子类是在使用List接口最常用的一个子类,允许重复,有序,继承了 AbstractList 并实现了 List 接口。
//1.初始化(记住就行)List<E> list = new ArrayList<E>();//说明:E为泛型,其实就是不同的对象//2.添加元素list.add(E1);list.add(E2);//3.循环输出for(int i=0;i<list.size();i++) {String item = list.get(i);}for (String item : strs) {System.out.println("item=" + item);}//4.修改元素与删除元素strs.set(0,"112233");strs.remove(0);
2. Set集合
Set跟List一样,是一个接口,不允许重复,多用于排重操作。
2.1 HashSet子类
HashSet是Set接口较为常见的子类,不允许重复 + 无序
Set<String> all = new HashSet<String>();all.add("leanboot");all.add("Java");all.add("Java");all.add("Hello World");System.out.println(all.size());//输出3
2.2 TreeSet子类
HashSet是Set接口较为常见的子类,不允许重复 + 有序
三、Arrays类
Arrays类位于 java.util 包中,主要包含了操纵数组的各种静态static方法。
1. sort排序
提供对数组的升序排序操作,操作的数组类型包括:int[] char[] long[] float[]等数值行数组
int[] nums = {2,5,0,4,1,-10};//1.升序全部排序Arrays.sort(nums);for(int i : nums) {System.out.println(i);}//输出:-10 0 1 2 4 5//2.还有类型sort(nums,0,4)这些分区间排序的,自己可以尝试一下
2. fill填充
为数组或者数组部分,填充相同的值
int[] nums = {2,3,0,4,1,-1};Arrays.fill(nums, 1);for(int i :nums){System.out.print(i);}//之前:2 3 0 4 1 -1//结果:1 1 1 1 1 1//还有类型fill(nums,0,4)这些分区间填充的,自己可以尝试一下



