作者: 张狮子 时间: 2016-4-30 15:01
抱歉我集合还没学,你可以按for循环生成十个数,用数组接受再排序打印这样的思路想想作者: cc19930915 时间: 2016-4-30 15:03
好简单。。。作者: 18814148171 时间: 2016-4-30 15:13
。。。。。。。。。。。不会作者: cc19930915 时间: 2016-4-30 15:43
public static void main(String[] args) {
//创建随机对象
Random r = new Random();
//创建list集合
List list = new ArrayList<>();
//循环判断
while(list.size() != 10){
//创建随机数
int num = r.nextInt(101);
//如果列表中不包含这个随机数
if(!list.contains(num)){
//那么就添加这个随机数
list.add(num);
}
}
//排序
selectSort(list);
//遍历
printList(list);
}
/*
* 冒泡排序
*/
public static void bubbleSort(List list){
for(int x = 0;x < list.size() - 1;x++){
for(int y = 0; y < list.size() - x - 1;y++){
if((Integer)list.get(y) > (Integer)list.get(y + 1)){
swap(list, y, y + 1);
}
}
}
}
/*
* 选择排序
*/
public static void selectSort(List list){
for(int x = 0;x < list.size() - 1;x ++){
for(int y = x + 1;y <list.size();y++){
if((Integer)list.get(x) > (Integer)list.get(y)){
swap(list, x, y);
}
}
}
}
/*
* 替换元素
*/
public static void swap(List list,int s1,int s2){
int temp = (Integer)list.get(s1);
list.set(s1, list.get(s2));
list.set(s2,temp);
}
/*
* 遍历集合
*/
public static void printList(List list){
for (Object object : list) {
System.out.print(object + " ");
}
} 作者: New灬狼 时间: 2016-4-30 19:08
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Random;
/*
*1.分析以下需求,并用代码实现:
* (1)生成10个1至100之间的随机整数(不能重复),存入一个List集合(可以先不适用泛型,泛型明天讲)
*(2)编写方法使用冒泡或选择排序对List集合进行排序,(禁用Collections.sort方法和TreeSet)
*(2)然后利用迭代器遍历集合元素并输出
*(3)如:15 18 20 40 46 60 65 70 75 91
*
*/
public class Test3 {
public static void main(String[] args) {
// 1,创建集合和生成随机数的对象
List list = new ArrayList();
Random r = new Random();
// 2,生成10个随机数,添加到list
while (list.size() < 10) {
int i = r.nextInt(100) + 1; //生成1-100的随机数
if (!list.contains(i)) { //如果集合中没有就添加
list.add(i);
}
}