前言
学的进度很慢,想日报一样把每天新学的东西略作总结,会更有收获,就权当是个记录吧。
day_2 数组
数组的长度是不可变的,一旦分配好空间,是多长,就多长,不能增加也不能减少。
·创建数组的几种方法
以创造一个长度为5的数组为例:
int a[]=new int[5];//创建长度为5的数组,但不指定数组内的元素
int a[]=new int[] {
1,2,3,4,5};//创建数组a,a含有五个元素,分别是1,2,3,4,5。
int a[]={
1,2,3,4,5};//省略new int[]也是可以的。
int a[]=new int[5] {
1,2,3,4,5};//即指定长度又指定内容的方法,但是长度必须和内容相匹配。
实践题目
1.数组最小值
首先创建一个长度是100的数组
然后给数组的每一位赋予随机整数
通过for循环,遍历数组,找出最小的一个值出来
int a[]=new int[100];
for(int i=0;i<100;i++) {
a[i]=(int) (Math.random() * 100);//Math.random() :到一个0-1之间的随机浮点数
System.out.println(a[i]);
}
int max=a[0];
int weishu=0,j=0;
for (j=0;j<100;j++){
if (a[j]>max){
max=a[j];
weishu=j;
}
}
System.out.println("最大值为数组中的第"+weishu+"位,它的值为:"+max);
或者,也可以用增强型for循环:
int a[] = new int[100];
for (int i = 0; i < 100; i++) {
a[i] = (int) (Math.random() * 100);//Math.random() :到一个0-1之间的随机浮点数
System.out.println(a[i]);
}
int max = 0;
for (int each : a) {
if (each > max)
max = each;
}
System.out.println("数组中的最大值为:" + max);
2.反转数组
首创建一个长度是10的数组,并填充随机数,对这个数组实现反转效果。这个题理解好了,对之后的反转链表会有帮助。
思路:
对于一个长度为n的数组a[n]