java学习第7天---7.1---数组基础
目录
内容
1、数组概念
数组就是一种容器,用来存放元素。在内存中为一片连续的内存空间。
2、创建数组
-
创建数组的3中方式:
int[] arr = new int[5]; int[] arr1 = new int[]{1, 4, 6}; int[] arr2 = {1, 5, 6};
-
注意事项:
- 数组中存放的元素类型必须一致
- 数组创建的时候需要指定容量,即存放元素的个数
3、数组访问
-
访问数组中的元素:
int[] arr = {23, 22, 11}; 访问第一个元素:arr[0] 访问第二个元素:arr[1] ...
- 格式:
- 数组名[下标]
- 格式:
-
数组名:数组的内存地址
-
下标:范围为0~数组长度-1 ,下标起始为0
4、常用方法
- 数组.length:数组长度,元素个数
5、数组分类
5.1、 一维数组
-
格式
数据类型[] 数组名
-
声明
int[] arr = new int[N];
5.2、二维数组
-
格式
数组类型[][] 数组名
-
声明
int[][] arr = new int[3][4];
5.3、 多维数组
-
格式
数据类型[][]...[] 数组名
-
声明
int[][]...[] = new int[m1][m2]...[mn];
5、数组遍历
-
一维数组:
for(int i = 0; i < arr.length; i++) {...arr[i]...}
-
多维数组:
for(int i1 = 0; i < arr.length; i1++) { for(int i2 = 0; j < arr[ii].length; i2++) { ... for(int in = 0; in < arr[in-1].length; in++) { ... } } }
6、小案例:
6.1、关灯问题
有100个人,编号1-100;有100个房间,编号1-100;每个房间中有一盏灯,灯有2种状态,亮或者灭,通过开关控制;每个人经过全部100个房间,当房间编号可以整除人的编号的时候,此编号的人进入房间按下开关。所有房间灯的初始状态为灭。那么当100个人全部走完之后,有哪些灯是亮的那些灯是灭的?
-
分析:
- 问题简化
- 灯有2种状态,,初始灭;被按奇数次,灯亮;被按偶数次,灯灭。
- 数字1-100,整除即是求每个数的因子个数奇偶个数
- 问题简化
-
代码6.1-1:
public class TestArray4 { public static void main(String[] args) { // 求1-100 因子个数为偶数的数 for(int i = 1; i <= 100; i++) { if(Math.sqrt(i) == Math.floor(Math.sqrt(i))) System.out.println(i); } } } 测试结果: 1 4 9 16 25 36 49 64 81 100
后记 :
本项目为参考某马视频开发,相关视频及配套资料可自行度娘或者联系本人。上面为自己编写的开发文档,持续更新。欢迎交流,本人QQ:806797785
前端项目源代码地址:https://gitee.com/gaogzhen/vue-leyou
后端JAVA源代码地址:https://gitee.com/gaogzhen/JAVA