JAVA(5)数组

2019-12-05  本文已影响0人  月圆星繁

数组
数组是在内存中存储相同数据类型的连续的空间

数组.png
声明数组

语法: 数据类型[ ] 数组名;
或者 数据类型 数组名[ ];

数组声明.png
分配空间

指定数组中最多可存储多少个元素
语法: 数组名 = new 数据类型 [ 数组长度 ];
其中,数组长度就是数组中能存放元素的个数

分配空间.png
赋值

分配空间后就可以向数组中放数据了,数组中元素都是通过下标来访问的


赋值.png
处理数组中数据

可以对赋值后的数组进行操作和处理,如获取并输出数组中元素的值:
System.out.println("scores数组中第一个元素的值:"+ scores[1]);

另外一种直接创建数组的方式

它将声明数组、分配空间和赋值合并完成:
int[ ] scores = {78,88,80,89,98};
等价于:
int[ ] scores = new int[ ]{78,88,80,89,98};

循环操作 Java 中的数组
int[ ] scores = {68,97,96,67,87,98};
for(int i = 0; i<scores.length; i++){
        System.out.println("数组中的第"+ (i+1)+"个元素的值是:"+scores[i]); 
}

数组名.length 用于获取数组的长度
数组下标从 0 开始
数组下标的范围是 0 至 数组长度-1 ,如果越界访问,就会报错

Arrays 类操作 Java 中的数组

Arrays 类是 Java 中提供的一个工具类,在 java.util 包中

Arrays.sort(数组名) 数组排序

import java.util.Arrays;
public class Helloword{
      public static void main(String [ ]args){
              int[ ] scores = {78,88,99,87,98,67};
              Arrays.sort(scores);
              System.out.println("排序后的数组元素值:");
              for(int i = 0 ;i<scores.length; i++){
                      System.out.println(scores[i]);
              }
      }
}

Arrays.toString(数组名) 数组转换为字符串

import java.util.Arrays;
public class Helloworld{
        public static void main(String []args){
                int nums[] = {88,90,89,79,67};
                System.out.println("数组转成字符串的值:"+Arrays.toString(nums));
        }
}
foreach 操作数组(没有foeach,其实还是for)

语法:

    for(元素类型   元素变量:遍历对象){
          执行的代码块
    }

分别使用 for 和 foreach 语句来遍历数组:

public static void main (String[] args){
        String[ ]  hobbys = {"mooc","描述","ffff"};
        System.out.println("使用for输出元素:");
        for(int i = 0; i< hobbys.length; i++){
              System.out.println(hobbys[i]);
        }
        System.out.println("使用foreach循环输出数组中的元素:");
        for(String hobby:hobbys){  
               System.out.println(hobby);
        }
}  

Java 中的二维数组

每个数组空间中保存的是一个一维数组

声明数组并分配空间

数据类型[ ][ ] 数组名 = new 数据类型[行的个数][列的个数]
或者
数据类型[ ][ ] 数组名;
数组名 = new 数据类型[行的个数][列的个数]
例如:
// 定义个3行5列的二维数组;
int[ ][ ] num = new int[3][5];

赋值

数组名[行的索引][列的索引] = 值
或者
** 数据类型[ ][ ] 数组名 = {{值1,值2},{值1,值2},{值1,值2}};
例如:
num[0][0] = 30;

数组遍历

使用两重循环

int[][]  num = {{12,23},{34,45,56,67}};
for(int i = 0; i <num.length; i++){
      for(int j = 0; j<num[i].length; j++){
            System.out.println(num[ i ][ j ]);
      }
      System.out.println();
}

在定义二维数组时也可以只指定行的个数,然后再为每一行分别指定列的个数。如果每行的列数不同,则创建的是不规则的二维数组


不规则二维数组.png
上一篇 下一篇

猜你喜欢

热点阅读