帅弟弟
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();
}
}
从简单到复杂,一步一步积累而来的,慢慢就可以写出复杂的代码,当你写出复杂的代码是,你就开始考虑如何去让代码更简洁,运行效率更高,又是从复杂到简单的过程,望楼主采纳打赏!
nextInt()方法的参数是不被包含的,应该把9改成10
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(); } }
贴代码的 时候可以选择 代码语言 这样 系统有缩进 别人也好看呢!
不能把代码格式规范下嘛,看着不累么
Java入门第三季
409792 学习 · 4340 问题
相似问题