目录
Arrays.binarySearch(查找的数组名称,你想要查找的值):
Arrays类
Arrays.sort(数组名):
对数组进行升序排序。
public static void main(String[] args) {
//Arrays.sort(数组名):对数组进行升序排序
int[] num01 = {40,76,34,55,83,19};
//输出数组排序前的值
System.out.println("----------排序前----------");
for (int i = 0; i < num01.length; i++) {
System.out.print(num01[i] + " ");
}
System.out.println();
//对数组进行升序排序
Arrays.sort(num01);
//输出数组排序后的值
System.out.println("----------排序后----------");
for (int i = 0; i < num01.length; i++) {
System.out.print(num01[i] + " ");
}
System.out.println();
}
Arrays.copyOf(数组名;长度):
复制数组中指定长度的值。
public static void main(String[] args) {
// Arrays.copyOf(数组名;长度):复制数组中指定长度的值。
char[] ch = {'a','b','c','d','e','f'};
//复制数组中指定长度的值。
char[] ch01 = Arrays.copyOf(ch, 4);
//数组ch中的所有值
System.out.println("---数组ch的所有值---");
for (int i = 0; i < ch.length; i++) {
System.out.print(ch[i] + " ");
}
System.out.println();
//数组ch01的所有值
System.out.println("---数组ch01的所有值---");
for (int i = 0; i < ch01.length; i++) {
System.out.print(ch[i] + " ");
}
System.out.println();
}
Arrays.fill(数组名 ; 值):
将数组中所有的值转换为指定的值。
public static void main(String[] args) {
// Arrays.fill(数组名 ; 值):将数组中所有的值转换为指定的值。
int[] num = {10,20,30,40,50,60};
//输出转换前的数组
System.out.println("---转换前的数组---");
for (int i = 0; i < num.length; i++) {
System.out.print(num[i] + " ");
}
System.out.println();
//将数组中所有的值转换666。
Arrays.fill(num, 666);
//输出转换后的数组
System.out.println("---转换后的数组---");
for (int i = 0; i < num.length; i++) {
System.out.print(num[i] + " ");
}
}
Arrays.binarySearch(查找的数组名称,你想要查找的值):
在指定的数组中查找你要找的数据,返回这个数据的下标,如果找不到这个值,返回一个负值。使用这个方法之前,要确保数组进行了排序,否则不能保证查询结果的正确性
public static void main(String[] args) {
/*
* Arrays.binarySearch(查找的数组名称,你想要查找的值):
* 在指定的数组中查找你要找的数据,返回这个数据的下标,
* 如果找不到这个值,返回一个负值。
* 使用这个方法之前,要确保数组进行了排序,否则不能保证查询结果的正确性
*/
int[] number = { 11, 55, 69, 34, 78, 16, 84 };
//对数组进行排序
Arrays.sort(number);
System.out.println("---数组排序后的值---");
for (int i = 0; i < number.length; i++) {
System.out.print(number[i] + " ");
}
System.out.println();
//查找元素下标
int index = Arrays.binarySearch(number, 78);
System.out.println("你要查找的数据下标:" + index);
}
Arrays.toString(数组名):
将数组转换为字符串。
public static void main(String[] args) {
// Arrays.toString(数组名):将数组转换为字符串。
int[] num = {10,20,30,40,50,60};
//输出num数组数组
System.out.println("---num数组---");
for (int i = 0; i < num.length; i++) {
System.out.print(num[i] + " ");
}
System.out.println();
//将数组转换为字符串。
String str = Arrays.toString(num);
//输出字符串数组
System.out.println("---num数组转换为字符串数组---");
System.out.println(str);
}
Arrays.equals(数组名1 ; 数组名2):
比较两个数组中的数据元素对应位置的值是否相同;返回值为boolean,如果两个数组相同,返回值为“true”;否则返回值为“false”。
public static void main(String[] args) {
/*
* Arrays.equals(数组名1 ; 数组名2):
* 比较两个数组中的数据元素对应位置的值是否相同;
* 返回值为boolean,如果两个数组相同,返回值为“true”;否则返回值为“false”。
*/
int[] num01 = {10,20,30,40,50,60};
int[] num02 = {10,20,30,40,50,60};
int[] num03 = {100,20,30,40,50,60};
//比较两个数组中的数据元素对应位置的值是否相同
boolean b = Arrays.equals(num01, num02);
boolean bq = Arrays.equals(num01, num03);
//输出比较结果
System.out.println("num01数组与num02数组是否相同:" + b);
System.out.println("num01数组与num03数组是否相同:" + bq);
}
二维数组
二位数组可以看成是以为一维数组,二位数组里的数据元素是一维数组。
二维数组声明
语法:数据类型 [ ][ ] 标识符(数组名);或者 数据类型 标识符(数组名)[ ][ ];
//声明int数据类型的二维数组
int[][] num;
//声明String数据类型的二维数组
String[][] str;
//声明char数据类型的二维数组
char[][] ch;
//声明double数据类型的二维数组
double[][] dle;
分配空间
语法:
标识符(数组名) = new 数据类型[长度][长度]; 或 标识符(数组名) = new 数据类型[长度][];
分配内存空间是第一个[ ]里的长度必须要写,第二个[ ]里的长度可以省略不写。
// num是一个由3行一维数组组成,每行一维数组可存储5个数据元素
num = new int[3][5];
// String是一个由2行一维数组组成,每行一维数组可存储3个数据元素
str = new String[2][3];
// char是一个由4行一维数组组成,每行一维数组可存储5个数据元素
ch = new char[4][5];
// double是一个由1行一维数组组成,每行一维数组可存储2个数据元素
dle = new double[1][2];
赋值
语法: 标识符(数组名) 下标][下标] = 数据;
//给num数组部分赋值
num[0][0] = 10;
num[0][2] = 20;
//给str数组部分赋值
str[0][0] = "Hwllo";
str[0][1] = "Java";
//给ch数组部分赋值
ch[0][0] = 'a';
ch[0][1] = 'b';
//给dle数组部分赋值
dle[0][0] = 10.0;
dle[0][1] = 100.0;
操作数据
语法:标识符(数组名)[下标][下标]
System.out.println(num[0][0]);
System.out.println(num[0][1]);
System.out.println(str[0][0]);
System.out.println(str[0][1]);
System.out.println(ch[0][0]);
System.out.println(ch[0][1]);
System.out.println(dle[0][0]);
System.out.println(dle[0][1]);