java数组复习

Java数组
一、一维数组
语法格式 数据类型[ ]数组名; 或 数据类型 数组名[ ];
1.数组的创建(是JVM在堆空间(Heap)中为数组元素分配内存空间并返回地址的过程)
  语法格式: 数组名 = new 数组元素类型[元素个数];
数组下标越界异常: IndexOutOfBoundException
2.数组静态初始化、
 &emsp 数组类型 [] 数组名 = {初值表};
3.数组元素初始化
在创建数组时JVM会根据数组元素的类型自动赋值:
 数值类型默认值为0;
 Boolean类型默认值为false;
 引用类型默认值为null;
练习

import java.util.Arrays;

public class ArrayTest {
   public static void main(String[] args) {
    //1.数组的定义:数组的声明和动态初始化
    int[] ia = null;
    ia = new int[3];
    //2.动态初始化
    int[] ib = new int[3];
    int ic[] = new int[3];
    //3.自定义初始化
    ia[0] = 1;
    ia[1] = 2;
    ia[2] = 3;
    //4.读取数组的长度
    System.out.println(ia.length);
    //5.数组的静态初始化
    double[] da = {3.14, 2.78, 3.45};
    //6.用for循环实现数组的遍历
    for (int i = 0; i < ia.length; i++) {
        System.out.println(ia[i]);
    }
    //7.用for增强数组实现数组的遍历,可以有效防止下标越界
    for (double d : da) {
        System.out.println(d);
    }
    //8.数组较少时可用Arrays.toString()输出,数组转换为字符串
    System.out.println(Arrays.toString(ia));
   }
}

数组的排序
1.冒泡排序算法。 2.java.util.Arrays.sort(int[ ]a)对数组进行升序排序。

public class BubbleSort {
 public static void bubble(int a[]) {
    int temp;
    for (int i = 0; i < a.length; i++) {
        for (int j = 0; j < a.length; j++) {
            if (a[j] > a[j + 1]) {
                temp = a[j];
                a[j] = a[j + 1];
                a[j + 1] = temp;

            }
        }
    }
}
}

二、二维数组
1.语法格式
数据类型[ ][ ] 数组名
2.二维数组的创建。
  数组名 = new 数据类型[ 元素个数][ ];
 在声明锯齿数组时至少要给出第一维的长度即确定行数。
2. 数组元素的初始化,默认赋值同一维数组一样。
3. 二维数组的静态初始化
  数据类型 数组名[ ] [ ] ={{初值表},{初值表},…}
4. 二维锯齿数组的应用
例子:int [][] ia ={{1,2,3,4},{5,6},{7,8,9}};
 ia.length代表行数3.
 a[0].length代表第0行的元素个数4.
 a[1].length代表第1行的元素个数2.
 a[2].length代表第2行的元素个数3.
练习

int[][] ia = {{1, 2, 3, 4}, {5, 6}, {7, 8, 9}};
for (int i = 0; i < ia.length; i++) {
 for (int j = 0; j < ia[i].length; j++) {         //每一行的列数可能不同
    System.out.println(ia[i][j]);
 }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值