JavaSE基础知识—数组的应用(4.2数组的基本及高级使用)

Posted truthseeking

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaSE基础知识—数组的应用(4.2数组的基本及高级使用)相关的知识,希望对你有一定的参考价值。

  功能 代码 功能 代码
基本使用 正序打印

for(int i=0;i<arr.length;i++){
  System.out.println(arr[i]);
}

倒序打印

for(int i=arr.length-1;i>=0;i--){
  System.out.println(arr[i]);
}
求和、求平均

int sum = 0;
for(int i=0;i<arr.length;i++){
  sum+=arr[i];
}
和:sum
平均值:sum/arr.length

查找

int index=-1;
for(int i=0;i<arr.length;i++){
  if(arr[i]==带查找的元素){
    index = i;
    break;
  }
}
if(index==-1){//没找到}else{找到了}
求最值

int max = arr[0];
int indexMax = 0;
int min = arr[0];
int indexMin = 0;
for(int i=1;i<arr.length;i++){
  if(arr[i]>max){
    max = arr[i];
    indexMax = i;
  }
  if(arr[i]<min){
    min = arr[i];
    indexMin = i;
  }
}
最大值:max
最小值:min

排序(冒泡)

for(int i=0;i<arr.length-1;i++){
  for(int j=0;j<arr.length-1-i;j++){
    if(arr[j]>arr[j+1]){
      int t = arr[j];
      arr[j] = arr[j+1];
      arr[j+1]=t;
  }
}
复杂使用  赋值(传统方式=arr)   newArr = arr; 循环赋值

①创建新数组,长度=旧数组.length
  int[] newArr = new int[arr.length];
②循环将旧数组的元素依次赋值给新数组的每个成员
  for(int i=0;i<newArr.length;i++){
    newArr[i] = arr[i];

  }

 反转(方式1)

for(int i=0;i<arr.length/2;i++){
  //交换两个数
  arr[i] vs arr[arr.length-1-i]
}

 
反转(方式2)

①创建新数组,长度=旧数组.length
  int[] newArr = new int[arr.length];
②循环赋值
  for(int i=0,j=arr.length-1;i<arr.length;i++,j--){
    newArr[i] = arr[j];
  }
③将新数组的地址赋值给旧数组
  arr = newArr;

 高级使用  追加元素 假如待添加的元素:add
①创建一个新数组,长度为 arr.length+1
  int[] tempArr = new int[arr.length+1];
②循环赋值(将arr的元素依次赋值给tempArr)
  for(int i=0;i<arr.length;i++){
    tempArr[i] = arr[i];
  }
补充:前两步可以使用
  int[] tempArr=Arrays.copyOf(arr,arr.length+1);代替
③将add添加到最后一个空位上
  tempArr[tempArr.length-1] = add;
④将tempArr的地址赋值给arr
  arr = tempArr;
插入元素

待添加的元素:add
待插入的位置:index
①创建一个新数组,长度为 arr.length+1
  int[] tempArr = new int[arr.length+1];
②循环赋值(将arr的元素依次赋值给tempArr)
  for(int i=0;i<arr.length;i++){
    tempArr[i] = arr[i];
  }
补充:前两步可以使用
  int[] tempArr=Arrays.copyOf(arr,arr.length+1);代替
③循环后移
  for(int i=tempArr.length-1;i>index;i--){
    tempArr[i] = tempArr[i-1];
  }
④将add添加到index上
  tempArr[index] = add;
⑤将tempArr的地址赋值给arr
  arr = tempArr;
  System.out.println("插入成功!");

 



















































































以上是关于JavaSE基础知识—数组的应用(4.2数组的基本及高级使用)的主要内容,如果未能解决你的问题,请参考以下文章

JavaSE基础知识—数组的应用(4.3二维数组)

JavaSE基础八----<集合>泛型集合体系Collection接口中的方法

Java容器深入浅出之数组

JavaSE知识-15(Colletion集合)

JavaSE笔记

JavaSE语言基础之数组二分法查找