如何让随机生成的每一朵花大小都不相同呢?
package com.imooc.flowers;
public class Flower {
private String floor;
private Integer size;
public Flower (){
}
public Flower(String floor, Integer size) {
this.floor = floor;
this.size = size;
}
public String getFloor() {
return floor;
}
public void setFloor(String floor) {
this.floor = floor;
}
public Integer getSize() {
return size;
}
public void setSize(Integer size) {
this.size = size;
}
}package com.imooc.flowers;
import org.junit.Test;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import static java.lang.Math.random;
public class Choosethebest {
@Test
public void chooseTheFlower() {
List<Flower> flowerList = new ArrayList<Flower>();
Flower flower = null;
for (int i=0; i<10; i++){
int size= ((int)(Math.random()*10));
flower= new Flower(String.valueOf(i+1),size);
flowerList.add(flower);
}
Collections.sort(flowerList, new Comparator<Flower>() {
public int compare(Flower o1, Flower o2) {
return o2.getSize()-o1.getSize();
}
});
for(Flower flower1 : flowerList){
System.out.println(flower1.getFloor()+":"+flower1.getSize());
}
System.out.println("应当选取"+flowerList.get(0).getFloor()+"层电梯的花");
}
}<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.2</version>
</dependency>
11
收起
正在回答
1回答
同学你好,这里可以利用HashSet中的元素不重复特性进行求解。
这里可以使用循环多次生成随机数,将生成的数字存放入Set集合,当集合的size满足要求时,停止循环,并遍历集合将随机数取出即可。
祝学习愉快~
java工程师2020版
- 参与学习 人
- 提交作业 9410 份
- 解答问题 16556 个
综合就业常年第一,编程排行常年霸榜,无需脱产即可学习,北上广深月薪过万 无论你是未就业的学生还是想转行的在职人员,不需要基础,只要你有梦想,想高薪
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星