一维数组;二维数组;Array。

一维数组:

1.1数组简介:

保存一组相同数据类型的数的集合

特性:

  1. 数组是引用数据类型
  2. 长度一经确定不能改变
  3. 数组里面存储的是数组元素(Element)(数组元素的类型可以是任意类型)
  4. 数组是一块连续的内存空间
  5. 数组的缩引由0开始

1.2数组声明

   int[] scores;//数组是引用类型  引用类型资至少占两块内存
     int scores2[];//等价(但不推荐使用)
     double[] arr1;
     float[]  arr2;
     String[] arr3;

1.3数组初始化

  1.数组初始化,长度为6的数组 0int默认值;double 0.0char “ ” boolean false
         scores=new int[6];
 //       2. 长度就是4
         int[] arr = new int[]{6,7,8,9};
 //       3.
         int []arr1 = {12,3,4,5};

l 获得数组元素内容

System.out.println(Arrays.toString(scores));

l 对数组元素重新赋值

int[] arr ={1,2,3,4,5};
int[] arr1=arr;//数组的赋值,引用的赋值
        int[] arr ={1,2,3,4,5};
        int[] arr1=arr;
        //          值赋值
       int[] arr2 = new int[arr.length];
        for (int i=0;i<arr.length;i++){
            arr2[i]=arr[i];
        }

l 遍历数组元素内容

for (int i=0;i<arr2.length;i++){
    System.out.println(arr2[i]);
}
//增强for循环遍历
        for(float a : arr2){
            System.out.println(a);

l 动态录入数据存储数组

int num = sc.nextInt();
 //初始化了一个长度为学生人数的数组
int[]scores = new int[num];
//给数组元素赋值
 for (int i=0;i<num;i++){
     System.out.println("录入第"+(i+1)+"个人学生成绩");
     scores[i]=sc.nextInt();
 }

l 获得数组元素最值

//        求最大值最小值
        int[] sort = {66,9,12,54,3,5,7,99};
        int  max =0;
        int min = 0;
        for (int i = 1; i <sort.length; i++) {
          if( sort[max]<sort[i]) {
              max = i;
          }
            if( sort[min]>sort[i]) {
                min = i;
            }
        }
        System.out.println(sort[max]);
        System.out.println(sort[min]);
    }

l 复制数组的元素到一个新数组中

//数组扩容
int[] arr2 = Arrays.copyOf(arr1, arr1.length*2);
System.out.println(Arrays.toString(arr2));
//值的复制
int[] arr3 = Arrays.copyOf(arr1,arr1.length);

l 比较两个数组数据是否一致

//判断两个数组的数组元素是否一一对应
boolean boo = Arrays.equals(arr1,arr2);
//引用类型使用双等号比较的是地址空间是否相等
        System.out.println(arr1==arr2);

l 对数组元素排序

//对数组进行排序  按自然顺序排序
Arrays.sort(arr1);
Arrays.sort(str);
System.out.println(Arrays.toString(arr1));
System.out.println(Arrays.toString(str));

二维数组

数组元素是一维数组

声明:int[][]a;
初始化二维数组:
  int(数据类型)[][] 变量名 = new 数据类型[m][n];
  其中:m表示这个二维数组有多少个一维数组
       n表示每一个一维数组中有多少个元素
  例如: int[][] arr = new int[3][2];
  定义了一个二维数组arr,有3个一维数组元素,每个一维数组里面有2个元素
  int(数据类型)[][] 变量名= new 数据类型[m][];
  这次没有直接给出一维数组的元素个数,可以动态的给出
  例如:int[][] arr = new int[3][];
  arr[0]= new int[2];arr[1]= new int[3];arr[2]= new int[1];
  数据类型[][]变量名 = {{元素},{元素}{元素}};
  例:int[][] arr = {{1,2,3},{1,2},{4,5,6}};

Arrays

l 操作数组元素的工具类。在java.util.Array 使用此类,需要导入此类所在的包。

  • Arrays.toString(数组名); 将数组内容转换成字符串进行输出
  • Arrays.copyOf(源数组,新数组长度); 复制数组元素
  • Arrays.equals(数组1,数组2);
  • Arrays.sort(数组)---->字面量类型数组 默认升序
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值