工具/原料
JDK、eclipse、android SDK、ADT
一、数组定义
1、数组的创建:
数组一旦创建,长度是固定不可变的,且类型一致,任何类型都可以创建成数组。
格式:
int [] a=new int[5];//定义数组的长度(其默认值5个整型位置都是0,布尔值是false,引用类型是null)
int[] a={};//初始化数组,只可被访问,不可被修改。
a=new int[]{4,2,6,8,4,2,5,7,9,6}//创建一个新数组
android学习札记第2章之数组一(概念)
2、数组的访问:
a[0]=343;
int b=a[1]+1;
3、数组的长度属性:
a的最大下标是a.length-1
4、数组的遍历:
有以下2种方法,第二种是从头到尾依次访问每一个位置。
Arrays.toString(a);
for(int i=0;i<A.LENGTH;I++){< p>
System.out.println(a[i]);
}
二、数组练习
1、猜数字:已经产生了[1,1000]范围的整数,请猜这个数是几。
思路:对半猜,最多猜2^10=1024次可以猜对。
android学习札记第2章之数组一(概念)
2、实现成绩录入查询。
(1)成绩录入
(2)成绩列表
(3)成绩查询
(4)成绩统计
(5)退出
指令>
思路:利用数组遍历即可实现。
3、实现双色球中选随机且不重复红、蓝球的功能。
思路:利用数组和循环即可实现,注意的是红球中的数字不能重复,需要排除已经选了的球,在剩下的球中选随机数,或者新建一个长度和红球数组相同boolean类型的数组(默认值false),如果选出一个随机球,就把当前位置赋值true,在下一次选球是判断当前位置是false时才能继续选,否则利用循环重新选,两种方法最后都要把选出的6个红球放在数组前面,再进行提取,就可以做到双色球的功能了。
三、数组作业
1、在一个数组中放入数据,先创建数组,再循环放入9,99,999,9999,99999,999999,9999999,99999999,999999999,注意要用循环实现,不能直接初始化数组。
思路:
①下一个数字等于上一个数字乘10+9,依次添加到数组中即可。
/*
* 把9,99,999,9999,99999,999999,9999999,99999999,999999999放入数组
* 9 9*10+9 (9*10+9)*10+9 ((9*10+9)*10+9)*10+9……
* 下一个数字等于上一个数字乘10+9,依次添加到数组中即可。
*/
②先把第一个9放入数组,后边每个数是9*10^1+上一个数,依次类推,添加到数组中即可。
/*
* 把9,99,999,9999,99999,999999,9999999,99999999,999999999放入数组
* 9 9*10+9 9*100+9*10+9 9*1000+9*100+9*10+9……
* 先把第一个9放入数组,后边每个数是9*10^1+上一个数,依次类推,添加到数组中即可。
*/
③遍历数组时,可看作连接字符串,然后再转换为整型,再依次添加到数组中即可。
/*
* 把9,99,999,9999,99999,999999,9999999,99999999,999999999放入数组
* 后边每个数比上一个数多一个9,看成字符串连接,依次放入数组即可。
*/
注意事项
数组一旦定义,就不可以修改,只能被访问,如果要修改可以用new int[]{}方式创建一个新数组。