javaSE学习02(数组)
程序员文章站
2024-03-24 08:15:28
...
数组定义格式
数组概述
一次性声明大量的用于存储数据的标量,
要存储的数据通常都是同类型数据
什么是数组
数组array是一种用于存储多个相同类型数据的存储模型
数组定义格式
格式一:数据类型[] 变量名 范例:int[] arr 常用
格式二:数据类型 变量名[] 范例:int arr[]
数组初始化
初始化概述:
初始化就是给数组中的元素分配内存空间,并为每个数组元素赋值
动态初始化:
格式:数据类型[] 变量名 = new 数据类型[数组长度];
范例: int[] arr = new int[3];
初始化时只指定了数组长度,由系统给数组分配初始值。
静态初始化:
格式:数据类型[] 变量名 = new 数据类型[]{数据1,数据2,...};
范例: int[] arr = new int[]{1,2,3};
初始化时指定每个数组元素的初始值,由系统决定数组长度。
简化格式:数据类型[] 变量名 = {数据1,数据2,数据3...};
范例: int[] arr = {1,2,3}; 主要方式
数组元素访问
数组变量访问方式
数组名
数组内部保存的数据访问方式
数组名[索引]
索引:
索引时数组中数据的编号方式
访问数组内部数据时, 数组名[索引] 等同于变量名
从0开始,逐一增加,索引是连续的。
内存分配
Java中内存分配
Java在运行时,需要在内存中分配空间。
为了提高运算效率,对不同的空间进行了不同区域的划分
每一片区域都有特定的处理数据方式和内存管理方式。
栈内存: 储存局部变量 使用完就会立即消失
堆内存: 储存new出来的内容(实体,对象)
new出来的东西都有一个地址值,使用完毕会在立即回收器空闲时被回收
数组内存图(单个数组)
数组内存图(多个数组)
数组内存图(多个数组指向相同)
两个问题:
索引越界:
访问了数组中不存在的索引,会报错
空指针异常:
访问的数组没有指向堆内存的数据,
访问时会造成空指针异常 NullPointerException
数组常见操作
遍历:
先获取数组元素数量 数组名.length
int[] arr = {....};
for(int x= 0;x<arr.length;x++){
arr[x] 对arr[x]进行操作
}
获取最值:
定义变量 ,用来保存最大值
取数组的第一个值放入
与数组中剩余的数据进行对比,把最大值保存进max中
最后将变量打印
示例
public class ArrayDemo {
public static void main(String[] args) {
int[] arr = {12,45,98,73,60};
int max = arr[0];
for(int x = 0;x<arr.length;x++){
if(arr[x] > max){
max = arr[x];
}
}
System.out.println("max:"+max);
}
}
推荐阅读
-
javaSE学习02(数组)
-
Javase学习记录之------加法的基础用法
-
Javase学习记录之------一维数组的基础使用
-
Swift学习笔记第三篇(字符串,数组,集合,字典)
-
SpringBoot学习笔记02——SpringBoot项目WebSocket推送
-
Leetcode刷题日记02——初级算法数组篇122买卖股票的最佳时机 II
-
刘意JavaSE 学习笔记 Day1-Day6——环境配置,基本语法
-
LeetCode初级算法--数组02:旋转数组
-
core java学习笔记(二):有关接口 博客分类: JavaSE Java
-
core java学习笔记(一):有关final修饰符 博客分类: JavaSE Java