当前位置: 首页 > wzjs >正文

怎样登陆网站后台武汉新一轮疫情

怎样登陆网站后台,武汉新一轮疫情,邢台网站建设服务商,网站内容与模板设计方案JavaSE 数组详解 一、数组的核心概念 数组是相同类型数据的有序集合,它在内存中占据连续的存储空间,通过索引快速访问元素。 特点: 长度固定,创建后不可变。元素类型必须相同。索引从0开始,范围为0到length-1。 二…

JavaSE 数组详解

一、数组的核心概念

数组是相同类型数据的有序集合,它在内存中占据连续的存储空间,通过索引快速访问元素。

特点

  • 长度固定,创建后不可变。
  • 元素类型必须相同。
  • 索引从0开始,范围为0length-1
二、数组的声明与初始化
1. 静态初始化
// 方式一:直接赋值
int[] arr1 = {1, 2, 3, 4, 5};// 方式二:显式指定类型
int[] arr2 = new int[]{10, 20, 30};
2. 动态初始化
// 声明并分配内存空间,元素默认初始化为0(基本类型)或null(引用类型)
int[] arr3 = new int[5]; // 长度为5的整数数组
三、多维数组

二维数组示例

// 静态初始化
int[][] matrix1 = {{1, 2, 3},{4, 5, 6},{7, 8, 9}
};// 动态初始化(规则数组)
int[][] matrix2 = new int[3][4]; // 3行4列// 动态初始化(不规则数组)
int[][] matrix3 = new int[3][];
matrix3[0] = new int[2];
matrix3[1] = new int[3];
matrix3[2] = new int[4];
四、数组的常用操作
1. 遍历数组
int[] arr = {1, 2, 3, 4, 5};// 普通for循环
for (int i = 0; i < arr.length; i++) {System.out.println(arr[i]);
}// 增强for循环(foreach)
for (int num : arr) {System.out.println(num);
}// Java 8 Stream API
java.util.Arrays.stream(arr).forEach(System.out::println);
2. 数组拷贝
int[] src = {1, 2, 3};
int[] dest = new int[src.length];// 方式一:System.arraycopy(高效)
System.arraycopy(src, 0, dest, 0, src.length);// 方式二:Arrays.copyOf(简洁)
int[] dest2 = java.util.Arrays.copyOf(src, src.length);// 方式三:clone方法(浅拷贝)
int[] dest3 = src.clone();
3. 数组排序
int[] arr = {5, 3, 1, 4, 2};// 升序排序(原生API)
java.util.Arrays.sort(arr);// 降序排序(需使用包装类)
Integer[] arrWrapper = {5, 3, 1, 4, 2};
java.util.Arrays.sort(arrWrapper, java.util.Comparator.reverseOrder());
4. 数组查找
int[] arr = {3, 7, 2, 8, 5};// 线性查找
int target = 8;
for (int i = 0; i < arr.length; i++) {if (arr[i] == target) {System.out.println("找到元素,索引为:" + i);break;}
}// 二分查找(需先排序)
java.util.Arrays.sort(arr);
int index = java.util.Arrays.binarySearch(arr, 8);
五、数组与方法
1. 作为参数传递
public void printArray(int[] arr) {for (int num : arr) {System.out.println(num);}
}// 调用
printArray(new int[]{1, 2, 3});
2. 作为返回值
public int[] generateArray(int size) {int[] arr = new int[size];for (int i = 0; i < size; i++) {arr[i] = i;}return arr;
}
六、数组的内存分析
int[] arr1 = new int[3];  // 栈内存存储引用,堆内存存储数组对象
int[] arr2 = arr1;        // 复制引用,指向同一对象
arr2[0] = 100;            // 修改arr2会影响arr1

内存分布

  • 栈内存:存储局部变量(如arr1arr2),保存数组对象的引用地址。
  • 堆内存:存储数组的实际内容(元素值)。
七、常见异常
  1. 数组越界异常(ArrayIndexOutOfBoundsException)

    int[] arr = new int[3];
    arr[3] = 10; // 抛出异常,合法索引为0~2
    
  2. 空指针异常(NullPointerException)

    int[] arr = null;
    System.out.println(arr.length); // 抛出异常,arr未指向任何对象
    
八、面试常见问题
  1. 数组和ArrayList的区别?

    • 数组:长度固定,可存储基本类型和引用类型,效率高。
    • ArrayList:长度动态可变,只能存储引用类型(自动装箱拆箱),使用更灵活。
  2. 如何实现数组的降序排序?

    Integer[] arr = {5, 3, 1, 4, 2};
    Arrays.sort(arr, Comparator.reverseOrder());
    
  3. 二维数组的内存结构是怎样的?

    • 二维数组本质是数组的数组,每行可能指向不同长度的子数组(不规则数组)。
  4. 如何安全地遍历数组避免越界?

    • 使用for (int i = 0; i < arr.length; i++)或增强for循环。
九、最佳实践
  1. 避免数组越界:遍历前检查索引范围。
  2. 优先使用工具类:利用java.util.Arrays提供的方法(如排序、查找)。
  3. 多维数组初始化:动态初始化时注意每行长度的一致性。
  4. 数组转集合:使用Arrays.asList()需注意返回的是固定大小的列表。

数组是Java中最基本的数据结构,深入理解其特性和操作是编写高效代码的基础。

http://www.dtcms.com/wzjs/380253.html

相关文章:

  • 网站建设亿玛酷可靠5软文广告范文
  • 蛋糕网站建设毕业论文app优化排名
  • 潍坊市安丘网站建设互联网广告投放公司
  • 建设网站的优点跟缺点信息流广告公司排名
  • 国家发改委网站吉抚武温铁路建设网络营销工程师
  • 廊坊cms模板建站培训机构招生方案
  • 网站后期推广是谁来做网红推广一般怎么收费
  • 中堂东莞网站建设夜狼seo
  • 网站建设服务专业建站公司中央突然宣布一个大消息
  • 中英版网站怎么做国际新闻最新消息今天
  • 营销型网站规划步骤百度推广账号怎么注册
  • 少儿编程十大培训机构重庆seo技术分享
  • 哈尔滨网站专业制作郑州百度推广代运营
  • wordpress个人站推广普通话奋进新征程
  • 怎么判断网站的好坏河南网站网络营销推广
  • 做旅游网站毕设任务书广告公司
  • 网站开发 python网站推广的技巧
  • 2013影响网站百度搜索排名的关键因素统计重庆seo招聘
  • 深圳中小企业网站制作武汉seo公司哪家专业
  • 北京建设银行官网招聘网站烟台seo
  • 小米商城网站建设分析网络营销策划书1000字
  • 广州专业手机网站建设湖南关键词优化首选
  • .jsp网站开发技术搜索引擎网站提交入口
  • 南京做网站哪家最好提高seo排名
  • ui设计技能就业培训百度推广优化排名
  • 龙岩融胤网络科技有限公司关键词优化需要从哪些方面开展
  • 怎么做考试资料分享网站seo优化外包公司
  • 营销网络怎么填写厦门seo优化推广
  • 北京网站建设公司降龙工具站seo
  • 胖哥食品网站建设规范意见济南百度竞价代运营