Java实验二:数组 & 增强for循环

2021/6/8 20:26:57

本文主要是介绍Java实验二:数组 & 增强for循环,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

第一题:36 生成 7

意思就是说:给出一个大小为7的数组,要求这个数组的每一个元素都是互不相同的,分布在[1, 36]的随机数,并且要求使用增强for循环输出这个数组。

我的解决方案:

import java.math.*;

@SuppressWarnings("unused")
public class Main3 {
	public static void main(String[] args) {
		int[] ele = new int[7];
		for(int i = 0;i < ele.length;++i) {
			Here:
			while(true) {
				int Temp = (int)(Math.random() * 36.0) + 1;
				for(int j = 0;j < i;++j)
					if(Temp == ele[j])
						continue Here;
				ele[i] = Temp;
				break;
			}
		}
		for(int num : ele)
			System.out.print(num + " ");
	}
}

运用知识点总结:

第一:数组是一个引用数据类型

数组是一个引用数据类型,所谓引用数据类型,就是说数组的每一个元素实际上都只是一个地址(作为变量放在栈区),这个地址指向一个对象实体(这个实体放在堆区)。然后我们无论是声明怎样数据类型的数组,都采用new的方式动态声明,但是初始化是可以动态也可静态的。这样声明的数组如果没有赋予初值,就遵守这样的规则:如果是普通数据类型的数组,就初始化为0,对象数据类型的数组就初始化为NULL。

第二:数组的遍历

因为数组是一个引用类型,这就说明数组本身也是一个对象,所以数组的属性不光有数组的元素值(指向实体的地址),还有别的属性,比如:length!这个属性很好用,在数组声明的时候,会根据数组声明时候开辟了多大的空间而自动初始化属性值length。
然后在遍历的时候就可以以属性length为循环的次数!

第三:增强for循环

Java里面引入了增强for循环,这样的for循环的坏处是:这个for循环内只能做读操作,不可以写入,也就是说这个for循环内只能对数据进行输出而不能进行访问和修改!语法格式是:

for(Type ele : array)
	System.out.println(ele);

注意这个ele才是遍历数组的数值,输出的也是ele,而不是array[ele]!!

第四:以continue后面加标签代替c++的goto语句!

上述代码中我们使用了continue后面加标签的形式,这个标签要先声明,表示满足continue条件后需要到达的位置!这里很明显我们遇到了重复值是需要重新进入循环的,于是我们的标签就放在循环的签名,注意声明标签的后面加冒号



这篇关于Java实验二:数组 & 增强for循环的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程