编写一个测试类(DogTest),在main方法中,定义3个长度的狗类对象数组,并通过循环为对象数组赋值,最后打印出3个狗中的最大年龄和最小年龄以及平均年龄
public class Test1 {
public static void main(String[] args) {
Dog[] arr = new Dog[3];
//赋值
for(int i=0;i<3;i++){
arr[i] = new Dog(new Random().nextInt(20));
}
int max = 0;
int min = arr[0].getAge();
int count = 0;
//get值
for(int j=0;j<arr.length;j++){
max = max>arr[j].getAge() ? max : arr[j].getAge();
min = min<arr[j].getAge() ? min : arr[j].getAge();
count = count+arr[j].getAge();
}
System.out.println(max);
System.out.println(min);
System.out.println(count);
}
}
class Dog{
private int age;
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Dog(int age){
this.age=age;
}
}
package com.yuyubing.lambda;
public class DogTest {
public static void main(String[] args) {
Dog[] dogList = new Dog[3];
for (int i = 0; i < 3; i++) {
dogList[i] = new Dog(i + 1);
}
int max = 0;
int min = 100;
float avg = 0;
float sum = 0;
for (Dog dog : dogList) {
int age = dog.getAge();
if (age > max) {
max = age;
}
if (age < min) {
min = age;
}
sum += age;
}
avg = sum / dogList.length;
System.out.println("最大年龄: " + max);
System.out.println("最小年龄: " + min);
System.out.println("平均年龄: " + avg);
}
static class Dog {
private int age;
public Dog(int age) {
this.age = age;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "Dog [age=" + age + "]";
}
}
}
这个问题应该不难,主要思路题干已经清楚了,
1. 有一个狗类对象
2. 有几个长度为3的数组,数组元素类型为狗类
3. 循环赋值数组元素中的值,这里看复制要求,如果随机,那就要中获取随机正整数的方法,如果固定,就直接写入就可以了
4. 求最大值/最小值/平均值,这个熟悉的话,可以一个循环,当然可以尝试用三个循环
5. 最后打印
楼上代码都给你敲了,哈哈。我只是一个打酱油路过的围观群众。