数组
数组其实也是一个容器,可以用来存储固定个数相同类型的数据数组的定义,数组中存储的数据叫做元素。
特点:
1、数组是引用数据类型;
2、数组的长度是固定的,也就是说可以存储固定个数的数据;长度一旦制定,不可更改;
3、数组中的元素的类型必须一致,也就是说数组中存储的多个数据的数据类型一致
定义数组
String[] aArray=new String[5];
String[] bArray={"a","b","c","d","e"};
String[] cArray=new String[]{"a","b","c","d"};
打印一个数组
int[] intArry={1,2,3,4,5};
String intArryString=Arrys.toString(intArry);
System.out.println(intArray);
System.out.println(intArrayString);
根据数组创建ArrayList
String[] stringArray={"a","b","c","d","e"};
ArrayList<String>arrayList=new ArrayList<String>(Arrays.asList(stringArray));
System.out.println(arrayList);
判断数组内部是否包含某个值
String[] stringArray={"a","b","c","d","e"};
boolean b=Arrays.asList(stringArray).contains("a");
System.out.println(b);
//true
连接两个数组
int[] intArray={1,2,3,4,5};
int[] intArray2={6,7,8,9,10};
int combinedIntArray=ArrayUtils.addAll(intArray,intArray2);
声明一个内联数组(array inline)
method(new String[]{"a","b","c","d","e"});
根据分隔符拼接数组元素(去掉最后一个分隔符)
String j=StringUtils.join(new String[]{"a","b","c"},",");
System.out.println(j);
ArrayList转数组
String[] stringArray={"a","b","c","d","e"};
ArrayList<String>arrayList=new ArrayList<String>(Arrays.asList(stringArray));
String[] stringArr=new String[arrayList.size];
arrayList.toArray(stringArr);
for(String s:stringArr)
System.out.println(s);
Array转Set
Set<String> set=new HashSet<String>(Arrays.asList(stringArrat));
System.out.println(set);
反转数组
int[] intArray={1,2,3,4,5};
ArrayUtils.reverse(intArray);
System.out.println(Arrays.toString(intArray));
//[5,4,3,2,1]
删除数组元素
int[] intArray={1,2,3,4,5};
int[] removed=ArrayUtils.removeElement(intArray,3);
System.out.println(Arrays.toString(removed));
整形转字节数组
byte[] bytes=ByteBuffer.allocate(4).putInt(8).array();
for(byte t:bytes){
System.out.format("0x%x",t);
}
添加元素
向数组中添加元素,有三种方法:
1、一般数组是不能添加元素的,因为他们在初始化时就已定义好长度了,并且长度不能改变。但有个可以改变大小的数组为ArrayList,即可定义一个ArrayList数组,然后用add(element)方法添加元素,还可用add(index,element)往指定下标处添加元素:
List<Integer> list=new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.add(2,4);
System.out.println(list);
2、第二种方式为先把array转化为list,用list的add()方法添加元素,再把list转化为array.
Integer []sz={3,2};
List<Integer> list=new ArrayList(Arrays.asList(sz));//**须定义时就进行转化**
list.add(1,5);
Integer[] nsz=new Integer[list.size()];
list.toArray(nsz);
System.out.println(Arrays.toString(nsz));
3、第三种方法为创建一个新数组,新数组的大小为旧数组大小+1,把旧数组里的元素copy一份进新数组,并把要添加的元素添加进新数组即可。