Java-数组
1、为什么需要数组?
当需要使用多个变量的时候,不方便,比如一个班级所有同学的名字,使用数组来简化我们开发
2、数组:用来保存一组相同类型的数据(变量),内存中是一段连续的存储空间
变量:内存中一块独立存储空间
数组可以包含多个变量
3、数组定义和创建:
数组是引用类型
格式:数据类型[] 数组名=new 数据类型[元素个数]
元素:数组中的变量
创建数组:必须要指明元素的个数
int[] ary1=new int[5];
格式2:不推荐
数据类型 数组名[]=new 数据类型[元素个数]
eg:int ary1[]=new int[5];
4、如何区分数组中每个元素?
下标:利用下标值才区分每个元素
下标从0开始
数组名[下标值]
eg:ary1第1个元素—ary1[0]
ary1最后一个元素—ary[4]
ArrayIndexOutOfBoundsException:数组下标超过边界,简称数组下标越界
public class Test1 { public static void main(String[] args) { // 数组元素的默认值:整数、浮点、布尔、String //整型数组元素的默认值0 int[] aryInt=new int[5]; System.out.println(aryInt[0]); //浮点数组元素的默认值0.0 float[] aryFloat=new float[5]; System.out.println(aryFloat[0]); //boolean型数组元素的默认值false boolean[] aryBoolean=new boolean[5]; System.out.println(aryBoolean[0]); //null:空,没有值,一般用来指代引用类型对象没有值 //String默认值是null String[] aryString=new String[5]; System.out.println(aryString[0]); } }
输出结果:
0
0.0
false
null
5、数组的遍历:逐个访问数组中的元素
访问:1.获取值 2.设置值
int[] ary=new int[5];
ary[0]=12;//设置值
System.out.println(ary [0]);//获取值
当数组元素很多的时候,可以跟for循环结合使用
数组元素的下标可以作为控制循环次数的变量i
一般格式:
for(int i=0;i<数组元素的个数;i++){
访问ary[i];
}
public class Test1 { public static void main(String[] args) { int[] arys=new int[5]; //数组元素的个数:数组名.length(数组的长度) for(int i=0;i<arys.length;i++) { arys[i]=i+1; System.out.println(arys[i]); } } }
for-each遍历,jdk 1.5才有的
主要针对数组等遍历
格式:for(数据类型 变量名:数组名字){
变量名;
}
用变量来指代数组中每个元素
仅仅用于显示数组中的元素
public class Test1 { public static void main(String[] args) { int[] arys=new int[10]; for(int i=0;i<arys.length;i++) { arys[i]=i+1; } for(int ary:arys){//ary:指代arys中每一个数组元素值 System.out.print(ary);//只能显示 } } }
6、数组的初始化:创建数组的同时,给数组元素赋值
静态初始化:
数据类型[] 数组名={元素1,元素2,元素3,…};
有多少个元素值,就表示该数组有多少个元素
eg:char[] c={‘a’,’b’,’c’};
动态初始化:
数据类型[] 数组名=new 数据类型[]{元素值1,元素值2…}
eg:char[] c=new char[]{‘a’,’b’,’c’};
原文地址:https://www.cnblogs.com/peiya/p/12681330.html
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- 手写dubbo框架7-SPI(dubbo和jdk的区别)
- Thinkphp5+plupload实现的图片上传功能示例【支持实时预览】
- YII框架学习笔记之命名空间、操作响应与视图操作示例
- python实现批量命名照片
- 手写dubbo框架8-SPI 自适应扩展机制
- thinkphp5框架扩展redis类方法示例
- 详解php中生成标准uuid(guid)的方法
- 基于Python爬取fofa网页端数据过程解析
- Python logging日志模块 配置文件方式
- PHP XML Expat解析器知识点总结
- PHP实现唤起微信支付功能
- PHP封装的mysqli数据库操作类示例
- PHP-FPM 的管理和配置详解
- PHP基于curl实现模拟微信浏览器打开微信链接的方法示例
- 实例讲解PHP表单验证功能