java--数组篇

6 篇文章 0 订阅

一、java数组的三种初始化方式

  • 一维数组
int[] array1=new int[7];
int[] array2=new int[]{12,4,5,6,7,8};
int[] array3={12,4,5,6,7,8};
  • 二维数组
int[][] array4=new int[3][4];
int[][] array5=new int[][]{{1,2,3},{4,5,6},{7,8,9}};
int[][] array6 ={{1,2,3},{4,5},{7,8}};

二、java中对二维数组的两种遍历方式

//一位数组也是这样
//第一种正常遍历
for(int i=0;i<array5.length;++i){
    for(int j=0;j<array5[i].length;++j){
      System.out.println(array5[i][j]);
    }
}
//第二种for each遍历
for(int[] arr:array2){
   for(int val : arr){
    System.out.println(val + " ");
    }
    System.out.println();
}

三、java中实用的Arrays类库

//1.equals() 多维数组用deepEqulas().
Arrays.equals(array1, array2)
//2.fill() 填充同一元素或复制同一引用.每个值都充填5,
Arrays.fill(array, 5);
//3.sort()数组排序.
Arrays.sort(array1);
//4.binarySearch();二分查找,找array中3的下标
Arrays.binarySearch(array1, 3)
//5.toString();打印数组
 System.out.println(Arrays.toString(array));
 System.out.println(Arrays.deepToString(array));
 //对二维数组打印

四、数组的三种拷贝方式

//第一种clone方法
int[] array2=array1.clone();
//第二种 Arrays.copyOf()
int[] array3=ArrayscopyOf(array1,array1.length);
//第三种 System.arraycopy();
int[] array4=new int(array1.length);
System.arraycopy(array1,0,array4,0,array1.length);
//第一个0代表从第几个开始拷,第二个0代表拷在哪

五、对数组的扩容和缩容

//扩容
public static void main(String[] args){ 
//对一个数的输入
      Scanner input = new Scanner(System.in);  
      System.out.println("请输入一个数字");  
      int num = input.nextInt(); 
    } 
    int [] array1 = {1,2,3,4,5};  
    int [] array2 = new int[array1.length] ; 
    System.arraycopy(array1, 0, array2, 0, array1.length); 
    //(源数组,源数组的哪个位置开始,目标数组,目标数组的哪个位置开始存放,拷贝几个);
    array1= Arrays.copyOf(array1,              
    System.out.println(Arrays.toString(array2));  
    } 
//缩容--以删除数组中的3为例子
public static void main(String[] args){  
    int [] array1 = {1,2,3,4,5};  
    int [] array2 = new int[array1.length-1] ; 
    index=2;//3的下标 
    System.arraycopy(array1, 0, array2, 0, index-1); 
    //(源数组,源数组的哪个位置开始,目标数组,目标数组的哪个位置开始存放,拷贝几个);
    System.arraycopy(array1, index+1, array2,index, array1.length-index+1);     
    System.out.println(Arrays.toString(array2));  
    }  
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值