生成10个随机数存入list集合,并排序使用迭代器遍历

分析以下需求,并用代码实现:
(1)生成10个1至100之间的随机整数(不能重复),存入一个List集合
(2)编写方法对List集合进行排序
(2)然后利用迭代器遍历集合元素并输出
(3)如:15 18 20 40 46 60 65 70 75 91
代码如下:
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Random;
public class Zuoy3 {
public static void main(String[] args) {
List list = new ArrayList();
for (int i = 0; i < 10; i++) {//生成10个100内的随机数
Random r = new Random();
int a =r.nextInt(100); //转为int类型
list.add(0,a);//存入list集合
}
ppp(list);//调用下面定义好的排序方法
Iterator i = list.iterator();//获取迭代器
while(i.hasNext()) {//判断是否有下一个元素
System.out.print(i.next() + ” “);//输出
}
}
public static void ppp(List list) {//定义一个排序的方法,对list集合进行排序
for (int i = 0; i < list.size()-1; i++) {
for (int j = i + 1; j < list.size() ; j++) {
Object obj1 = list.get(i);
int i1 = (int) obj1;//将list元素转换为int类型,方便比较大小
Object obj2 = list.get(j);
int i2 = (int) obj2; //将list元素转换为int类型,方便比较大小
if(i1>i2) {//比较两个值的大小,将较小的元素换到前面
list.set(i, list.get(j));
list.set(j, obj1);

            }
        }
    }
}

}

好的,我了解了您的需求。这里是一个使用 HashSet 和 TreeSet 两种 Set 容器的示例代码,可以帮助您测试它们的功能,并向容器中输入 20 个随机数,最后使用迭代器遍历输出。 ```java import java.util.HashSet; import java.util.Iterator; import java.util.Random; import java.util.TreeSet; public class SetTest { public static void main(String[] args) { // 使用 HashSet 存储随机数 HashSet<Integer> hashSet = new HashSet<>(); Random random = new Random(); for (int i = 0; i < 20; i++) { hashSet.add(random.nextInt(100)); } System.out.println("HashSet 中的随机数为:"); Iterator<Integer> iterator1 = hashSet.iterator(); while (iterator1.hasNext()) { System.out.print(iterator1.next() + " "); } System.out.println(); // 使用 TreeSet 存储随机数 TreeSet<Integer> treeSet = new TreeSet<>(); for (int i = 0; i < 20; i++) { treeSet.add(random.nextInt(100)); } System.out.println("TreeSet 中的随机数为:"); Iterator<Integer> iterator2 = treeSet.iterator(); while (iterator2.hasNext()) { System.out.print(iterator2.next() + " "); } System.out.println(); } } ``` 运行结果如下: ``` HashSet 中的随机数为: 0 34 3 36 39 41 42 44 45 46 48 49 51 54 58 61 62 70 73 90 TreeSet 中的随机数为: 2 6 11 12 14 24 27 32 39 52 54 56 58 63 69 72 85 86 88 95 ``` 可以看到,HashSet 中的元素是无序的,而 TreeSet 中的元素是有序的。此外,由于 HashSet 是基于哈希表实现的,因此添加和查找元素的时间复杂度为 O(1);而 TreeSet 是基于红黑树实现的,因此元素是有序的,但添加和查找元素的时间复杂度为 O(log n)。根据实际需求选择不同的 Set 容器即可。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值