Java的数组

一、数组的基本概念

1.什么是数组

  •          定义:是一个变量,存储相同数据类型的一组数据的集合。
  •          数组结构与基本要素:标识符、数组元素、元素下标、元素类型
  •          内存分配:创建数组时,java会在内存中分配一段连续的存储空间来存放数组元素内容。
  •          元素索引:为数组下标,从0开始到数组元素n-1个结束;索引表示数组元素分配的所在位置。

2.数组的创建与初始化

  • 数组的创建:
//声明数组:数据类型[]变量名; or 数据类型 变量名[];
    int []arr;
    int arr[];
//分配数组内存大小:变量名 = new 数据类型[内存大小];  
    arr=new int[n]; // n为大于1的整数
//赋值:变量名[下标] = 值;
    arr[0] = 1;
    arr[1] = 2;
//数组元素的使用:变量名[下标]
    arr[i] //i为数组的索引,是一个大于0的整数
//创建数组:1. 数据类型[] 变量名 = new 数据类型[内存大小]; 
    int [] arr = new arr[n];
//2. 数据类型[] 变量名 = { 元素1,元素2 ,元素3 };
    int [] arr = {1,2,3};

3.数组的使用 

  • 输出数组中指定元素:
         int arr[]={1,2,3,4,5};
         //打印出数组中的2
         System.out.print(arr[1]);//利用下标获取数组内的指定内容
  • 数组的遍历:
   //遍历数组
   //1.先创建一个数组
    int arr[]={1,2,3,4,5};
    //2.利用for循环语句遍历arr数组
    for(int i=0;i<arr.length;i++){
        //依次输出arr数组中的内容
        System.out.println(arr[i]);//依次输出arr[0~4]
     }
    //利用foreach语句遍历arr数组
    for(int x : arr){
        System.out.println(x);
    }

二、二维数组

1.定义:就是一个集合中存放的每一个元素都是 一个一维数组,本质是数组中放数组。

   //数据类型[][] 变量名 = new 数据类型[cols][rows];
     int[][] arr = new int[i][j];// i 表示行数,j表示列数
   //数据类型[][] 变量名 = { {},{},{} };
    int[][] arr={{1,2,3},{4,5},{6,7,8}};

2.二维数组的遍历

//创建一个二维数组
int[][] arr1 = { {1,2,3},{4,5,6} };
//嵌套for循环遍历
for (int i = 0; i < arr1.length; i++) {
    for (int j = 0; j < arr1[i].length; j++) {
         System.out.print(arr1[i][j] + "\t");//输出二维数组中的具体元素内容
     }
         System.out.println();//换行
}

三、数组的常用方法

        Java中的Arrays工具类包括了数组常用的一些方法,比如数组的排序,数组的拷贝等方法,而这些方法,在我们的日常生活中也是经常使用的。在使用之前需要导入包

import java.util.Arrays;或者 import java.util.*;

1.Arrays.toString方法 

含义:将一组数组转化成字符串

public static String toString(int[] a)

参数

a 要返回其字符串表示形式的数组

public static void main(String[] args) {
    int[] array = new int[] { 1,2,3,4 };
    System.out.println(Arrays.toString(array));//[1,2,3,4]
}

2.Arrays.copyOf方法

含义:将指定长度数组的内容复制到新数组中

public static int[] copyOf(int[] original, int newLength) ;            

参数

original : 要复制的数组

newLength : 要返回的副本的长度

public static void main(String[] args) {
    int[] array = new int[] { 1,2,3,4 };
    int[] ret = Arrays.copyOf(array,2);
    System.out.println(Arrays.toString(ret));//将[1,2]粘贴在list中
}

3.Arrays.copyOfRange方法

含义:将指定范围数组的内容复制到新数组中

public static int[] copyOfRange(int[] original, int from, int to)

参数:

         original : 要从中复制范围的数组

         from : 要复制的范围的初始索引(包括)

         to  : 要复制的范围的最终索引,除了它本身。 (该索引可能位于数组之外)

public static void main(String[] args) {
    int[] array = new int[] { 1,2,3,4 };
    //2表示array数组中的第两个元素到第四个之间的元素
    int[] list = Arrays.copyOfRange(array,2,4);
    //表示list数组中粘贴[3,4]元素内容
    System.out.println(Arrays.toString(list));
}

4.Arrays.sort方法

含义:将数组的元素内容升序排序

public static void sort(int[] a)

public static void main(String[] args) {
    int[] array = new int[] { 4,3,2,1 };
    Arrays.sort(array);
    System.out.println(Arrays.toString(array));//[1,2,3,4]
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值