数组的操作a.循环遍历
int[] array1 = {3,4,2,3,5,6,7,5};
for(int i=0;i<array1.length;i++){
System.out.println(array1[i]);
}
for(int j:array1){
System.out.println(j);
}
b.获取最值
int[] array1 = {3,4,2,3,5,6,7,5};
int max = array1[0];
for(int i=0;i<array1.length;i++){
if(array1[i]>max){
max = array1[i];
}
}
System.out.println(max);
c.逆序
int[] array1 = {3,4,2,3,9,5,6,7,5};
for(int i=0;i<(array1.length/2);i++){
int temp = array1[i];
array1[i] = array1[array1.length-1-i];
array1[array1.length-1-i] = temp;
}
for(int i:array1){
System.out.print(i+",");
}
d.排序
快速排序:
int[] array1 = {3,4,2,3,9,5,6,7,5};
Arrays.sort(array1);
for(int i:array1){
System.out.print(i+",");
}
冒泡排序(*):
int[] array1 = {3,4,2,3,9,5,6,7,5};
for(int i=0;i<array1.length-1;i++){
for(int j=0;j<array1.length-1-i;j++){
if(array1[j]>array1[j+1]){
int temp = array1[j];
array1[j] = array1[j+1];
array1[j+1] = temp;
}
}
}
选择排序:
for(int i=0;i<array1.length;i++){
int min = i;
for(int j=i;j<array1.length;j++){
if(array1[min] > array1[j]){
min = j;
}
}
if(min != i){
int temp = array1[i];
array1[i] = array1[min];
array1[min] = temp;
}
for(int k:array1){
System.out.print(k+",");
}
System.out.println();
}
e.复制
Arrays.copyOf():
举例:
int[] array1 = {3,4,2,3,9,5,6,7,5};
int[] array2 = Arrays.copyOf(array1, 3);
for(int i:array2){
System.out.print(i+",");
}
Arrays.copyOfRange():
举例:
int[] array1 = {3,4,2,3,9,5,6,7,5};
int[] array3 = Arrays.copyOfRange(array1, 2, 5);
for(int i:array3){
System.out.print(i+",");
}
f.替换
举例1:
int[] array1 = {3,4,2,3,9,5,6,7,5};
Arrays.fill(array1, 8);
for(int i:array1){
System.out.print(i+",");
}
举例2:
int[] array1 = {3,4,2,3,9,5,6,7,5};
Arrays.fill(array1,3,5,8);
for(int i:array1){
System.out.print(i+",");
}