Java 一维数组

数组作为对象允许使用 new 关键字进行内存分配。
在使用数组之前,必须首先定义数组变量所属的类型。

Java 创建一维数组

下面介绍创建一维数组的两种方式。

  1. 先声明,在进行内存分配
#### 声明 ##### 
数组元素类型 数组名字[];
数组元素类型[] 数组名字;
#### 分配内存 #### 
数组名字 = new 数组元素类型[数组元素个数];

### 例子 ### 
int arr[];//或者是 int[] arr;
arr = new int[5];
  1. 声明的同时为数组分配内存
数组元素类型 数组名[] = new 数组元素类型[数组元素个数];

### 例子
int month[] = new int[12]; 

Java 初始化一维数组

数组与基本数据类型一样可以进行初始化操作。数组的初始化可分别初始化数组中的每个元素。

int arr[] = new int[]{1,2,3,4,5};
int rr2[] = {23,,354,46,4};

Java 一维数组的使用

package com.darklovy.array;
public class GetDay {
     
     public static void main(String[] args) {
          //创建并初始化一维数组
          int day[] = new int[]  {31,28,31,30,31,30,31,31,30,31,30,31};
          for (int i=0; i<12; i++) {
              System.out.println((i+1)+"月有"+day[i]+"天");
          }
     }
}

### 结果
1月有31天
2月有28天
3月有31天
4月有30天
5月有31天
6月有30天
7月有31天
8月有31天
9月有30天
10月有31天
11月有30天
12月有31天



### Java一维数组的使用方法 #### 定义与声明 在一维数组中,可以通过指定数据类型来定义数组。例如,`int[] intArray;` 表示定义了一个存储整数类型的数组 `intArray`[^5]。 #### 初始化方式 ##### 静态初始化 静态初始化是指在定义数组的同时为其分配初始值。这种方式可以直接列出数组中的元素值。 ```java // 整型数组静态初始化 int[] intArray = {1, 2, 3, 4}; // 字符串数组静态初始化 String[] stringArray = {"Hello", "World"}; ``` 以上代码展示了如何通过大括号 `{}` 来完成静态初始化[^2]。 ##### 动态初始化 动态初始化是在运行时为数组分配内存空间并设置其大小。此时不需要立即提供具体数值。 ```java // 创建一个长度为5的整型数组,默认值均为0 int[] intArray = new int[5]; // 创建一个长度为3的字符串数组,默认值均为null String[] stringArray = new String[3]; ``` 此段代码说明了如何利用 `new` 关键字实现动态初始化[^5]。 #### 访问数组元素 访问数组中的单个元素可通过索引来完成,需要注意的是,数组索引是从零开始计数的。 ```java // 输出数组第二个位置上的值(即索引为1) System.out.println(intArray[1]); ``` #### 遍历数组 遍历整个数组有多种方法,其中最常用的就是传统的 `for` 循环以及增强版的 `for-each` 循环。 ```java // 使用传统for循环遍历数组 for (int i = 0; i < intArray.length; i++) { System.out.println("下标为" + i + "的数据为:" + intArray[i]); } // 使用foreach循环简化操作 for (int element : intArray) { System.out.println(element); } ``` 上述例子分别演示了两种不同的遍历技术及其应用场景[^3]。 #### 常见错误处理 当尝试访问超出范围或者非法区域内的数组项时会抛出异常——`ArrayIndexOutOfBoundsException` 。因此,在实际编程过程中应当特别留意边界条件检查。 ```java try{ // 尝试获取不存在的位置可能会引发越界错误 System.out.println(intArray[intArray.length]); }catch(ArrayIndexOutOfBoundsException e){ System.err.println(e.getMessage()); } ``` ### 示例程序综合应用 下面给出一段完整的测试代码用于展示前面提到的各种概念的实际运用情况: ```java public class ArrayExample { public static void main(String[] args) { // 动态初始化一个包含五个随机整数的数组 int[] numbers = new int[5]; for(int i=0;i<numbers.length;i++){ numbers[i]=(int)(Math.random()*100)+1; } // 打印所有生成好的数字 System.out.println("以下是产生的随机数列表:"); for(int number:numbers){ System.out.print(number+" "); } } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值