JAVA 的四种数组创建 和取值

数组【重点】

开发中为啥要使用数组

如果开发中出现了大量的同一个类型的数据,按照现在所学的知识点,声明变量的话。如果一个变量存一个数据的话,那么就会需要多个变量了,相当麻烦。

使用数组: 只需要一个变量,然后数组中存很多的数据

数组想成 一个容器。

int[] arr = {1,2,3,4,5,6};

数组在Java中如何定义的

变量定义:

数据类型 变量名字 = 值;

数组定义:

数据类型[] 数组名字 = 数组的值;

数组详细的语法格式:

注意

数组名.length
//代表数组的长度

第一种数组

import java.util.Arrays;
​
public class Demo4 {
    public static void main(String[] args) {
     
        //数组第一种声明方式 :数据类型[]   数组的名字 = {值1, 值2, 值3,...};
        int[] arr = {23, 34, 12, 15};
        System.out.println(arr);//[I@15db9742  内存地址   但是数据看不到 那咋办?
        System.out.println(Arrays.toString(arr));//  将一个内存地址形式的数据变成 人类可以看懂的
        //[23, 34, 12, 15]
        
        String[] strs = {"撒旦","沙发", "功夫"};
        System.out.println(strs);//@6d06d69c
        System.out.println(Arrays.toString(strs));//[撒旦, 沙发, 功夫]
        
        boolean[] bools = {true, true, false, true};
        System.out.println(bools);//[Z@7852e922
        System.out.println(Arrays.toString(bools));//[true, true, false, true]
        
     
        float[] f2 = {12.3f, 45.6F};//[F@15db9742
     System.out.println(Arrays.toString(f2));//[12.3, 45.6]
        
        
        //声明一个char类型的数组
        char[]  chs = {'a', '中', '9'};
        System.out.println(chs);//a中9  这个比较特殊 打印不是地址  是数组中值组成的
        
    }
}

第二种数组

数据类型[]   数组的名字 = new  数据类型[容量];
或者
数据类型 数组的名字[] = new  数据类型[容量];

第一种和第二种区别: 第一种即声明了数组又对数组赋值了

第二种只是声明空的数组而已,暂时还没有赋值 ​

import java.util.Arrays;
​
public class Demo5 {
    public static void main(String[] args) {
        
        //第二种声明方式: 数据类型[]   数组的名字 = new  数据类型[容量];
        int[] arr = new int[3];//在声明一个数组 ,且容量为3  只能存放3个数据  空的数组
        //初始值arr = {0,0,0};
        System.out.println(arr);//内存地址
        System.out.println(Arrays.toString(arr));//[0, 0, 0]
        //此时是空的数组  
        String[] strs = new String[4];
        System.out.println(strs);
        System.out.println(Arrays.toString(strs));//[null, null, null, null]
        //这种方式的声明 是好比弄好了桌子 空桌子  
            
    }
}

第三种数组

语法格式:

数据类型[] 数组的名字  = new 数据类型[]{值1, 值2, 值3,...};

其实是第一种的完全写法

public class Demo6 {
    public static void main(String[] args) {
     
        char[] chs = new char[] {'a', '啊', 'o'};
        System.out.println(chs);//a啊o
        
        String[] strs = new String[] {"撒旦","沙发", "功夫"}; 
        System.out.println(strs);//内存地址
        System.out.println(Arrays.toString(strs));//[撒旦, 沙发, 功夫]
    }
}

二维数组【了解】

二维数组【二维空间】

[1,2,3,4] 一维数组 排成一条线

语法格式

数据类型[][]  数组名字 = new 数据类型[容量][荣量];

[

[1,2,3,4]

[5,6,7,8]

[8,9,1,2]

]

7889100
25010199
import java.util.Arrays;
​
public class Demo9 {
    public static void main(String[] args) {
        int[][] arr = new int[2][3];
        
        arr[0][0] = 78;
        arr[0][1] = 89;
        arr[0][2] = 100;
        arr[1][0] = 250;
        arr[1][1] = 101;
        arr[1][2] = 99;
        
        //第一个[]  是行  第二个[] s是列
        //取数据  使用循环来取
        for (int i = 0; i < 2; i++) {//控制行
            for (int j = 0; j < 3; j++) {//控制列
                
                System.out.println(arr[i][j]);
            }
        }
        
        
        
    }
}

对数组进行取值

数组的取值是利用 下标取的

public class Demo8 {
    public static void main(String[] args) {
        int[] arr = {32, 45, 89, 12, 999, 5667};
        //获取数组中的值
        System.out.println(arr[0]);//32
        System.out.println(arr[1]);//45
        System.out.println(arr[2]);//89
        System.out.println(arr[3]);//12
     
        System.out.println("======分割线========");
        
        for (int i = 0; i < 4; i++) {
            //i的循环的值 刚好作为数组的下标
            System.out.println(arr[i]);
        }
        
        //数组.length    数组的长度
        System.out.println(arr.length);//  arr的长度    4
        
        System.out.println("-------分割线--------");
​
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }
        
        
        
        String[] strs = {"张三", "哈哈", "麻子", "嘻嘻"};
        for (int i = 0; i < strs.length; i++) {
            System.out.println(strs[i]);
        }
        
    }
}

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值