Java 数组简单使用

一维数组

数组:(Array)最常见的一种数据结构,它是相同类型的用一个标识符封装到一起的基本类型数据序列或者对象序列。

创建一维数组

声明一维数组的语法格式有两种:

// 数据类型[] 数组名
type[] arrayName;
// 数据类型 数组名[]
type arrayNamep[];

推荐使用第一种,第一种代码可读性更好。数据类型可以是基本数据类型,也可以是引用数据类型。

下面是声明几个一维数组的案例

// 存储年龄的数组,类型为int整型
int[] age; 
// 存储名字的数组,类型为String字符串型
String[] name;
// 存储价格的数组,类型为double浮点型
double[] prince;

注意:在声明数组变量的时候千万不能漏写[]

分配空间

声明数组,只是得到了一个存放数组的变量,使用new关键字来为数组分配内存空间

// 数组名 = new 数据类型[数组长度] 
arrayName = new type[size];

age = new int[30];
name = new String[20];
price = new double[10];

当然了,我们可以声明分配一起使用

int[] arr = new int[5];

数组的下标是从0开始的。如果没有赋初值,那么默认int类型是0

img

数组使用

获取数组内容

// 获取数组下标为0的内容,因为是int类型,没有赋初值 默认0
System.out.println(arr[0])   // 0
    
// 设置数组的值
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
arr[3] = 4;
arr[4] = 5;

遍历数组

// 1 循环
int[] nums = new int[]{1,2,3,4};
for(var i : nums){
    System.out.println(i);
}

// 2 循环
for(int i = 0; i < nums.length; i++){
    System.out.println(a[i]);
}

// 3 表达式
Arrays.stream(nums).forEach(System.out::println)

声明一个数组,初始化10个1-100随机数

public class Ex4{
    public static void main(String[] args){
        Random rand = new Random();
        Integer[] n = new Integer[10];
        for(int i = 0; i < n.length; i++){
            n[i] = rand.nextInt(100) + 1;
        }
        
        // 遍历输出
        for (var e : n){
            System.out.println(e);
        }
    }
}

排序

// 使用Arrays工具类,sort方法排序(默认升序)
Arrays.sort(n);
System.out.prinltln(Arrays.toString(n))
 
// 降序
Arrays.sort(n,(a,b) -> b - a );
System.out.println(Arrays.toString(n));

如果要求声明一个数组,数组种什么都可以放入,这个数组必须为Object数组

二维数组

二维数组,数组的数组

int[][] nums = new int[3][5]; // 第一个必须要有长度
double[][] d = new double[3][];
String[][] s = new String[3][];

// 定义时初始化
int[][] nu = new int[][]{{1,2,3},{2131,23,123}};

// 获取单个元素
System.our.println(nu[0][0]);

// 获取全部元素
int[][] nu = new int[][]{{1, 2, 3}, {2131, 23, 123}};
for (int i = 0; i < nu.length; i++) {
	for (int j = 0; j < nu[i].length; j++) {
		System.out.println(nu[i][j]);
	}
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值