• java-数组


    一、数组的概述

    1.数组的理解:数组(Array),是多个相同类型数据按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。

    2.数组的相关概念

    数组名
    元素
    索引
    数组的长度:元素的个数

    3.数组的特点:

    数组是有序排列的
    数组属于引用数据类型的变量。数组的元素既可以是基本数据类型,也可以是引用数据类型。
    创建数组对象会在内存中开辟一整块连续的空间。
    数组的长度一旦确定,就不能修改。

    4.数组的分类

    按照维数:一维数组、二维数组...
    按照数组元素的类型:基本数据元素的数组、引用数据类型元素的数组。

    5.一维数组的使用

    ①一维数组的声明和初始化
    ②如何调用数组的指定位置的元素
    ③如何获取数组的长度
    ④如何遍历数组
    ⑤数组元素的默认初始化值
    ⑥数组的内存解析

    public class ArrayTest {
    public static void main(String[] args) {
    	
    	//1.一维数组的声明和初始化
    	int num;//声明
    	num = 10;//初始化
    	int id = 1001;//声明+初始化
    	
    	int[] ids;//声明
    	//1.1静态初始化:数组的初始化和数组元素的赋值操作同时进行
    	ids = new int[]{1001,1002,1003,1004};
    	//1.2动态初始化:数组的初始化和数组元素的赋值操作分开进行
    	String[] names = new String[5];
    	
    	//总结:数组一旦初始化完成,其长度就确定了。
    	
    	//2.通过索引的方式调用数组的指定位置元素。
    	//数组的索引从0开始,到数组的长度-1结束
    	names[0] = "小明";
    	names[1] = "小明1";
    	names[2] = "小明2";
    	names[3] = "小明3";
    	names[4] = "小明4";
    	
    	//3.如何获取数组的长度。
    	//属性:length
    	System.out.println(names.length);//5
    	System.out.println(ids.length);
    	
    	//4.如何遍历数组元素,
    	for(int i = 0;i < names.length;i++){
    		System.out.println(names[i]);
    	}
    	
    	/*5.数组元素的默认初始化值
    	 *①数组元素是整型:0
    	 *②数组元素是浮点、double型:0.0
    	 *③数组元素是char型:0或'u0000'
    	 *④数组元素是boolean型:false
    	 *
    	 *数组元素是引用类型时:null
    	*/ 
    	
    }
    

    }

    一维数组的内存解析

    6.多维数组的使用

    二维数组的理解:可以看成是一维数组array1又作为另一个一维数组array2的元素而存在。从数组底层的运行机制来看,其实并没有多维数组。

    public class ArrayTest {
    public static void main(String[] args) {
    	
    	//1.二维数组的静态初始化
    	int[][] arr1 = new int[][]{{1,2,3},{4,5},{6,7,8}};
    	//二维数组的动态初始化
    	String[][] arr2 = new String[3][2];//3个数组元素,每个数组元素有两个元素
    	
    	//2.通过索引的方式调用数组的指定位置元素。
    	System.out.println(arr1[0][1]);//2
    	
    	//3.如何获取数组的长度。
    	//属性:length
    	System.out.println(arr1.length);//3
    	System.out.println(arr1[1].length);//2
    	
    	//4.如何遍历数组元素
    	for(int i = 0;i < arr1.length;i++){
    		for(int j = 0;j < arr1[i].length;j++){
    			System.out.print(arr1[i][j] + "  ");
    		}
    		System.out.println();
    	}
    
    	//5.数组元素的默认初始化值
    	/*规定:二维数组分为外层数组的元素,内层数组的元素。
    	 * int[][] arr = new int[4][3];
    	 * 外层元素:arr[0],arr[1]等
    	 * 内层元素:arr[0][0],arr[1][1]等
    	 * 
    	 * 针对于初始化方式一:比如String[][] arr2 = new String[3][2];
    	 * 外层元素初始化值:地址值
    	 * 内层元素初始化值:与一维数组初始化情况相同
    	 * 
    	 * 针对于初始化方式二:比如int[][] arr3 = new int[4][];
    	 * 外层元素初始化值:null
    	 * 内层元素初始化值:不能调用,否则报错
    	*/
    	System.out.println(arr2[0]);//@15db9742 地址池
    	System.out.println(arr2[0][0]);//null
    	System.out.println(arr2);//@6d06d69c
    	
    }
    

    }

    二维数组的内存解析:

  • 相关阅读:
    MySQL慢查询日志总结
    SQL Server 关于列的权限控制
    Oracle global database name与db link的纠缠关系
    TCP Provider The semaphore timeout period has expired
    SQL SERVER 中如何用脚本管理作业
    Unable to determine if the owner (DomainUserName) of job JOB_NAME has server access
    TNS-12535: TNS:operation timed out案例解析
    ORA-12154 & TNS-03505 案例分享
    MS SQL巡检系列——检查数据库上一次DBCC CHECKDB的时间
    查看数据库表的数据量和SIZE大小的脚本修正
  • 原文地址:https://www.cnblogs.com/nnadd/p/12345058.html
Copyright © 2020-2023  润新知