二维数组 创新互联建站专注于怀化企业网站建设,成都响应式网站建设公司,商城系统网站开发。怀化网站建设公司,为怀化等地区提供建站服务。全流程按需定制制作,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务 |
笔记Notes
|
二维数组的元素是一维数组 二维数组的声明和初始化 String [][] persons; String persons2[][]; String [] persons3[]; 二维数组的初始化 //静态初始化 persons = new String[][]{{"小龙哥","110"},{"小仓","119"},{"小强","120"}}; //声明和初始化不能分开 int[][] numbers = {{1,2},{3,4},{5,6}}; //动态初始化 persons2 = new String[3][2]; //3值得是二维数组长度,2指的是二维数组元素(一维数组)的长度 //创建一个长度为3的二维数组,二维数组的元素为null persons3 = new String[3][]; persons3[0] = new String[2]; persons3[1] = new String[3]; 获取二维数组的值,元素的值 String aString = persons3[2][2]; int a = persons3.length; int b = persons3[0].length;
//遍历二维数组 for (int i = 0; i < numbers.length; i++) { for (int j = 0; j < numbers[i].length; j++) { System.out.print(numbers[i][j] + " "); } System.out.println(); }
使用二维数组打印一个 10 行杨辉三角。 【提示】 1. 第一行有 1 个元素, 第 n 行有 n 个元素 2. 每一行的第一个元素和最后一个元素都是 1 3. 从第三行开始, 对于非第一个元素和最后一个元素的元素。即: yanghui[i][j] = yanghui[i-1][j-1] + yanghui[i-1][j]; public class YangHui { public static void main(String[] args) { //创建二维数组 int[][] numbers = new int[10][]; //给二维数组的元素赋值 for (int i = 0; i < numbers.length; i++) { //创建二维数组的元素(一维数组) numbers[i] = new int[i + 1]; //给二维数组中的元素的第一个元素和最后一个元素赋值 numbers[i][0] = numbers[i][i] = 1; //遍历二维数组中的元素(一维数组),不包括第一个和最后一个 for (int j = 1; j < numbers[i].length - 1; j++) { numbers[i][j] = numbers[i - 1][j] + numbers[i - 1][j - 1]; } } //遍历二维数组 for (int i = 0; i < numbers.length; i++) { for (int j = 0; j < numbers[i].length; j++) { System.out.print(numbers[i][j] + " "); } System.out.println(); } } }
int[] ns = {5,2,30,4,1,90}; int[] ns2 = {5,2,3,4,1}; //比较两个数组是否相等 : 比较的是内容,个数,顺序 boolean equals = Arrays.equals(ns, ns2); System.out.println(equals); //输出数组信息 String nsStr = Arrays.toString(ns); System.out.println(nsStr); //将指定的数值填充到数组中 Arrays.fill(ns, 100); System.out.println(Arrays.toString(ns)); //对数组中的内容进行排序 Arrays.sort(ns); System.out.println(Arrays.toString(ns)); //二分法查找 - 使用前必须先排序 - 如果找不到会返回负数 int index = Arrays.binarySearch(ns, 4); System.out.println(index);
//1.数组下角标越界 :ArrayIndexOutofBoundsException int[] numbers = new int[2]; //索引值合理范围 :0 ~ 长度-1 System.out.println(numbers[2]); //发生了异常 System.out.println(numbers[-1]); //发生了异常 //2.空指针异常 :: NullPointerException String str = "aaa"; str = null; System.out.println(str.toUpperCase());//发生了异常 String[] names = new String[2]; System.out.println(names[0].toUpperCase());//发生了异常 String[][] persons = new String[3][]; System.out.println(persons[0][0]); //发生了异常 System.out.println(persons[0].length); //发生了异常
声明:int[] x,y[]; 在给x,y变量赋值以后,以下选项允许通过编译的是: a ) x[0] = y; //类型不符,x[0]为int类型,而y为引用类型 b) y[0] = x; //可以 c) y[0][0] = x; //类型不否,x为引用类型,而y[0][0]为int类型 d) x[0][0] = y; //x为一维数组 e) y[0][0] = x[0]; //可以 f) x = y; //类型不符,一个是一维数组,一个是二维数组 提示: 一维数组:int[] x 或者int x[] 二维数组:int[][] y 或者 int[] y[] 或者 int y[][] |
总结Summary |
|
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。