我的任务是使用 10个随机整数值(10 - 20)作为长度,并在for循环中创建 10个Square
类的实例将10个Square实例存储在sqArray
中,并打印出数组中所有元素的长度和面积。
这是方形类的代码
public class Square {
private int length;
// Create a constructor that takes in len as parameter
public Square(int len){
length = len;
}
public int getLength(){
return length;
}
public double calculateArea(){
return length * length;
}
} //Square
这是我的主要课程的代码
public class SquareUser {
public static void main(String[] args) {
//Create an instance of array sqArray.
Square[] sqArray = new Square [10];
for(int i = 0; i < sqArray.length; i++) {
sqArray[i] = (int) (Math.random()*10);
}
}
}
正如你所看到的,我在main class
中并没有真正做任何事情,因为我不知道这个问题在谈论什么。我有两个问题:
如果数据类型是对象,如何在for循环中生成随机整数?
“在sqArray
中存储10平方的实例”是什么意思?他们是否要我将随机整数存储在sqArray
?
答案 0 :(得分:3)
您只需生成10到20之间的随机整数,并将其设置为创建的对象,如下所示:
public class SquareUser {
public static void main(String[] args) {
//Create an instance of array sqArray.
Square[] sqArray = new Square [10];
for(int i = 0; i < sqArray.length; i++) {
int val = 10 + (int) (Math.random()*10);
sqArray[i] = new Square(val);
System.out.println("Length is "+val);
System.out.println("Area is "+sqArray[i].calculateArea());
}
}
}
答案 1 :(得分:1)
你快到了。
sqArray[i] = (int) (Math.random()*10);
使用
sqArray[i] = new Square( 10 + Math.floor((int) (Math.random()*11)));
Square
个对象数组