JavaSE数组
数组
概念
在Java中,数组是一种用于存储多个相同类型元素的数据结构。数组在内存中是连续存储的,每个元素在数组中都有一个唯一的索引,可以通过索引来访问数组中的元素。
- 数组是一组相同数据类型元素的集合,是一个容器
- 数组本身时引用数据类型,是一个对象
- 数组可以存储基本数据类型,也可以存储引用数据类型
- 数组创建时必须指定长度,且长度不可变
- 数组中每个元素是连续的
如何创建数组
数组声明的两种方法
1. 数据类型 [] 数组名字;eg:int [] a;
2. 数据类型 数组的名字 []; eg:int a []
注:建议使用第一种
数组创建
创建一个容量为5的数组:
import java.util.Arrays;//声明这个包后就可以使用Arrays这个类的方法
public class ArrayPractice {
public static void main(String[] args) {
int [] a = new int[5];
System.out.println(a);//输出的是存储数组元素的内存首地址
System.out.println(Arrays.toString(a));//直接遍历出来[0, 0, 0, 0, 0]
//创建数组时,值是已知的,直接进行赋值,就不需要指定长度
int [] c = new int[]{1,2,3,4,5,6,7};
//简化版
int [] d = {1,2,3,4,5,6,7};
}
}
数组的访问与迭代
- 数组元素的访问:
数组名[索引] 例如:a[0],a[1];
- 注意
数组的索引从0开始。
索引的数据类型是整数(int)
索引最大值和数组长度始终差1
- 获取数组名长度
数组名.length
- 数组元素的遍历
1.for循环
for(int i=0;i<a.length;i++){
System.out.println(a[i]);
}
2.增强for循环
for(元素类型 临时变量:遍历的数组){
临时变量
}
for(int t : a){
System.out.println(t);
}
二维数组
定义:
数组的数组,二维数组的每一个元素是一个一维数组
数组的声明
int[][]a;
int a[][];
注:最好使用第一种声明方式,不容易混淆a的数据类型
数组创建(会自动进行初始换为0)
int [][]a = new int [][]{{1,2,3},{1,2,3},{1,2,3}};
int [][]a = {{1,2,3},{1,2,3},{1,2,3}};
int [][]a = new int[3][5];//定义了一个整型的二维数组 ,这个二维数组有3个一维数组,每一个一维数组包含5个元素
int [][]a = new int [3][]//表示每一个一维数组为null,即没有创建;
a[0]=new int[4];
a[1]=new int[5];
a[2]=new int[4];//对二维数组中的一维数组创建和初始化;
数组遍历
双层循环遍历
eg:
int[][]a = {{1,2,3,3},{4,5,6,4},{7,8,9,5}};
//循环二维数组 从二维数组中每次取出一个一维数组
for(int i=0;i<a.length;i++){
//遍历每一个一维数组
for(int j=0;j<a[i].length;j++){
//遍历一维数组
System.out.print(a[i][j]+" ");
}
System.out.println();
}
JavaSE数组的更多相关文章
- JavaSE| 数组
1.数组(array) 数组就是多个相同类型数据的组合,实现对这些数据的统一管理. 数组中的元素可以是任何数据类型,包括基本数据类型和引用数据类型.数组属引用类型,数组型数据是对象(object),每 ...
- [javaSE] 数组(查找-二分查找)
前提数组必须是有序的 定义最小,最大,中间的角标索引 int min,max,mid; min=0; max=arr.length-1; mid=(min+max)/2; 上面的索引需要变化,使用循环 ...
- [javaSE] 数组(获取最值)
数组的常见操作(获取最值) 1.获取最值需要进行比较,每一次比较都会有一个较大的值,因为该值不确定,通过一个变量进行存储 2.让数组中的每一个元素都和这个变量中的值进行比较,如果大于了变量中的值,就用 ...
- 学习JavaSE 数组
一维数组 基本概念 1.数组中只允许放同一种类型(可以是父子关系). 2.数组即对象. 例: int[ ] arrs={0,1,2};//arrs即一个对象. 3.数组是定长的,不可以增加或者减少. ...
- [javaSE] 数组(排序-冒泡排序)
两层嵌套循环,外层控制循环次数,内层循环进行比较 for(int x=0;x<arr.length-1;x++){ for(int y=0;y<arr.length;y++){ if(ar ...
- [javaSE] 数组(排序-选择排序)
两层嵌套循环,外层循环控制次数,内层循环进行比较 for(int x=0;x<arr.length;x++){ for(int y=0;y<arr.length;y++){ if(arr[ ...
- Comparator比较器
Comparator比较器 简介 为什么写? comparator 是javase中的接口,位于java.util包下,该接口抽象度极高,有必要掌握该接口的使用 大多数文章告诉大家comparator ...
- JavaSE语法基础(3)---函数、数组
JavaSE语法基础(3)---函数.数组 函数的概念:实现特定功能的一段代码,可反复使用. 函数的出现减少代码冗余,提高代码的复用性,可读性,可维护性,可以使每个功能模块独立起来,方便分工合作. 函 ...
- JavaSE回顾及巩固的自学之路(四)——————方法和数组,面向对象
今天是2018.03.31,emmmmmm.好像距离上一次写Javase回顾总结已经好久好久过去,差一点就以为要停更了,哈哈哈. 其实呢,最近是真的好忙(额,这段时间觉得自己一直在学习) ...
- 「JavaSE 重新出发」05.02 泛型数组列表、包装类
泛型数组列表 ArrayList 是一个采用类型参数(type parameter)的泛型类(generic class). java ArrayList<Employee> staff ...
随机推荐
- 《Effective C#》系列之(一)——异常处理与资源管理
请注意,<Effective C#>中的异常处理与资源管理部分实际上是第四章的内容.以下是关于该章节的详细解释. 第四章:异常处理与资源管理 一. 了解异常处理机制 异常处理机制使程序员能 ...
- .NET开源免费的跨平台框架 - MAUI(附学习资料)
前言 前几天分享了一个.NET MAUI开源免费的UI工具包 - Uranium,然后技术群有不少同学问.NET MAUI是不是免费的?能做什么?今天特意写这篇文章来介绍一下.NET开源.免费(基于M ...
- 力扣385(java)-迷你语法分析器(中等)
题目: 给定一个字符串 s 表示一个整数嵌套列表,实现一个解析它的语法分析器并返回解析的结果 NestedInteger . 列表中的每个元素只可能是整数或整数嵌套列表 示例 1: 输入:s = &q ...
- 高德AR驾车导航解决方案
简介: 高德从2018年首创了车载AR导航后,已经先后在后视镜.智能车盒.前装整车厂.后装车机产品.行车记录仪等众多场景落地应用,搭建了非常完整的AR导航生态. 日前,高德地图最新发布了v10.60新 ...
- Spring Boot 微服务性能下降九成!使用 Arthas 定位根因
简介: 接收到公司业务部门的开发反馈,应用在升级公司内部框架后,UAT(预生产)环境接口性能压测不达标. 背景 接收到公司业务部门的开发反馈,应用在升级公司内部框架后,UAT(预生产)环境接口性能压测 ...
- MySQL 深潜 - MDL 锁的实现与获取机制
简介:本文将介绍在 MDL 系统中常用的数据结构及含义,然后从实现角度讨论 MDL 的获取机制与死锁检测,最后分享在实践中如何监控 MDL 状态. 作者 | 泊歌 来源 | 阿里技术公众号 一 背 ...
- OpenKruise v0.9.0 版本发布:新增 Pod 重启、删除防护等重磅功能
简介: OpenKruise 是阿里云开源的云原生应用自动化管理套件,也是当前托管在 Cloud Native Computing Foundation (CNCF) 下的 Sandbox 项目.它来 ...
- 2018-8-29-dotnet-core-2.1-使用阶梯编译
title author date CreateTime categories dotnet core 2.1 使用阶梯编译 lindexi 2018-08-29 08:49:12 +0800 201 ...
- ITIL4服务价值系统(SVS)与莫比乌斯环:无限服务优化的拓扑之旅
莫比乌斯环:单一而无限的象征 莫比乌斯环,这个拓扑学上的奇观,以其独特的一体两面特性,完美地映射了ITIL4服务价值系统的精髓.它象征着无限.统一和连续性,提示我们看待事物时应超越传统二元对立的视角, ...
- ansible(2)--ansible的安装与配置文件管理
目录 1 ansible的安装 1.1 yum安装 1.2 pip安装 2 ansible相关文件 2.1 ansible配置文件 2.2 ansible配置文件的优先级 2.3 ansible的主机 ...