参考了一点点其他同学的,我自己做了这段代码,感觉比较简单

来源:6-5 应用 Collections.sort() 实现 List 排序

帅弟弟

2015-12-10 09:42

package com.imooc.collection;


import java.util.*;


import javax.print.DocFlavor.STRING;


public class StringCollection {

List<String> ST = new ArrayList<String>();

public void add(){


Random random = new Random();

//定义一个包含所有字符的字符串

String sourse = "0123456789qwertyuiopasdfghjklzxcvbnm";

for(int i = 0;i < 10;i++){

//添加的次数

String str ="";

do{

int length = 1+random.nextInt(9);

//生成随机字符串的长度

for(int j = 0;j<length;j++){

//生成每个位置的字符

char x = sourse.charAt(random.nextInt(sourse.length()-1));

str = str + x;

}

}while(ST.contains(str));

{

ST.add(str);

System.out.println("第"+(i+1)+"次添加的字符串为"+str);

}

}

}

public void sort(){

System.out.println("------排序前-------");

Iterator<String> it = ST.iterator();

while(it.hasNext()){

String str = it.next();

System.out.println(str);

}

System.out.println("------排序后-------");

Collections.sort(ST);

Iterator<String> it2 = ST.iterator();

while(it2.hasNext()){

String str2 = it2.next();

System.out.println(str2);

}

}

public static void main(String[] args) {

// TODO 自动生成的方法存根

StringCollection sc = new StringCollection();

sc.add();

sc.sort();

}

}


写回答 关注

5回答

  • 慕莱坞9220042
    2015-12-10 10:40:41
    已采纳

    从简单到复杂,一步一步积累而来的,慢慢就可以写出复杂的代码,当你写出复杂的代码是,你就开始考虑如何去让代码更简洁,运行效率更高,又是从复杂到简单的过程,望楼主采纳打赏!

  • 聚水弥香
    2016-03-01 17:34:15

    nextInt()方法的参数是不被包含的,应该把9改成10

  • 帅弟弟
    2016-01-06 18:10:30
    package com.imooc.collection;
    
    import java.util.*;
    
    import javax.print.DocFlavor.STRING;
    
    public class StringCollection {
    List<String> ST = new ArrayList<String>();
    	public void add(){
    
    		Random random = new Random();
    		//定义一个包含所有字符的字符串
    		String sourse = "0123456789qwertyuiopasdfghjklzxcvbnm";
    		for(int i = 0;i < 10;i++){
    			//添加的次数
    			String str ="";
    			do{
    			int length = 1+random.nextInt(9);
    			//生成随机字符串的长度
    			for(int j = 0;j<length;j++){
    				//生成每个位置的字符
    				char x = sourse.charAt(random.nextInt(sourse.length()-1));
    				str = str + x;
    			}
    			}while(ST.contains(str));
    					{
    			ST.add(str);
    			System.out.println("第"+(i+1)+"次添加的字符串为"+str);
    			}
    		}
    	}
    	public void sort(){
    		System.out.println("------排序前-------");
    		Iterator<String> it = ST.iterator();
    		while(it.hasNext()){
    			String str = it.next();
    			System.out.println(str);
    		}
    		System.out.println("------排序后-------");
    		Collections.sort(ST);
    		Iterator<String> it2 = ST.iterator();
    		while(it2.hasNext()){
    			String str2 = it2.next();
    			System.out.println(str2);
    		}
    	}
    	public static void main(String[] args) {
    		// TODO 自动生成的方法存根
    		StringCollection sc = new StringCollection();
    		sc.add();
    		sc.sort();
    	}
    }


  • 天启之魂
    2015-12-10 12:31:36

    贴代码的 时候可以选择 代码语言 这样 系统有缩进 别人也好看呢!

    帅弟弟

    嗯 谢谢提醒,我没有注意到效果、

    2016-01-06 18:10:56

    共 1 条回复 >

  • 隔壁村的严二狗
    2015-12-10 11:15:10

    不能把代码格式规范下嘛,看着不累么

Java入门第三季

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

409792 学习 · 4340 问题

查看课程

相似问题