3:java 数组
来源:互联网 发布:知乎贵族学校 编辑:程序博客网 时间:2024/05/14 02:59
1 数组
a 数组的声明:
int[] ary;
int ary[]; //不推荐的写法!
b 数组的初始化:
1 动态初始化: 必须指明数组的长度
int[] ary = new int[10];
int[] ary = new int[]{3,1,4,1,5,9};
2 静态初始化: 只能在声明数组时候使用!
int[] ary = {3,1,4,1,5,9};
//ary = {2,7,1,8};//编译错误
ary = new int[]{2,7,1,8};
3 数组成员自动初始化为"零"值.
"零"值: 0, 0.0, '\u0000', false, null
c 数组的访问
1 使用ary.length 属性可以获取数组的长度
2 数组的下标(index)从0开始, 最大是length-1
一共length个元素.
3 可以使用下标访问指定的元素:
int a = ary[2];//读取
ary[2] = 8;//写入
4 如果越界访问会出现异常(错误)
ArrayIndexOutOfBoundsException
案例练习
a 等本金还款
借款本金: 18万
利息: 5.6% (年利息)
还款期数(月): 60个月(5年)
每月归还本金: 180000/60=3000
第1月还利息: (180000-3000*0)*(5.6% / 12)=840
第2月还利息: (180000-3000*1)*(5.6% / 12)=826
//...
第1月 3000 840 3840
第2月 3000 826 3826
//...
i = 0~59
lixi[60]
2 数组的扩展问题
1 Java数组的大小是固定的
2 利用数组复制到方法可以变通的实现数组扩展
3 System.arraycopy() 可以复制数组
4 Arrays.copyOf() 可以简便的创建数组副本
5 创建数组副本的同时将数组长度增加就变通的实现了
数组的扩展
案例: 统计一个字符在字符串中的所有位置.
int[] ary = new int[]{1,2,4,5};
int[] ary2 = ary;//ary2 和 ary是同一个数组
ary[1] = 3;
System.out.println(ary2[1]);//3
//数组的复制 ary -> ary3
int[] ary3 = new int[ary.length];
for(int i=0; i<ary.length; i++){
ary3[i] = ary[i];
}
//long l = System.currentTimeMillis();
System.out.println(ary3[2]);//4
// 数组的复制 ary->ary4
int[] ary4 = new int[ary.length];
System.arraycopy(ary, 0, ary4, 0, ary.length);
//数组的动态扩展
int[] ary5 = new int[ary.length+1];
System.arraycopy(ary, 0, ary5, 0, ary.length);
ary = ary5;
- 33 java 数组3
- 3:java 数组
- java-数组3
- Java数组3
- JAVA-3 数组
- Java数组(3)
- java 数组练习题3
- Java基础3-----数组
- JAVA题目-数组3
- java--数组3
- 3 java se(3)----数组
- java基础要点(3)数组
- JAVA学习笔记3--数组
- Java学习(3)_数组
- java数组添加数组
- java数组添加数组
- Java数组-二维数组
- 【Java】数组--二维数组
- 职场中如何学会为自己工作!
- 关于android双缓冲绘图的分析
- [LeetCode]Distinct Subsequences,解题报告
- 再解Java中的String
- GDI+学习及代码总结之------文本与字体
- 3:java 数组
- 常用的版本控制软件
- iOS 公司开发者账号申请查询、帮助链接
- spring(2) cxf security
- Python实现邮件发送
- VM VirtualBox虚拟机与物理主机之间的复制
- 浅谈linux(一)-目录与文件
- 利用堆栈实现迷宫问题的求解
- WINDOWS服务启动依赖关系