.
任务要求:
1.创建完List<String>之后,往其中添加十条随机字符串
2.每条字符串的长度为10以内的随机整数(最好不要是0,程序中避免了0)
3.每条字符串的每个字符都为随机生成的字符,字符可以重复
4.每条随机字符串不可重复
package lu.zhang;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Random;
public class ListStringSort {
List<String> listString;
public ListStringSort(){
listString=new ArrayList<String>();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
ListStringSort lss=new ListStringSort();
lss.load();
lss.sort();
}
/**
* 向泛型为String的List中加入十条随机字符串
*/
public void load(){
Random random=new Random();
String str="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
System.out.println("-------------排序前--------------");
for(int i=0;i<10;i++){
Integer randInt;
do{
randInt=random.nextInt(10);
}while(randInt==0); //防止randInt为0
String everyStr;
do{
char[] charArray=new char[randInt];
for(int j=0;j<randInt;j++){
Integer randInt2=random.nextInt(62);
charArray[j]=str.charAt(randInt2);
}
everyStr=Arrays.toString(charArray);
}while(this.listString.contains(everyStr));//防止字符串重复
this.listString.add(everyStr);
}
for (String string : this.listString) {
System.out.println("加入元素:"+string);
}
}
/**
* 对List中的字符串进行排序
*/
public void sort(){
Collections.sort(this.listString);
System.out.println("-------------排序后--------------");
for (String string : this.listString) {
System.out.println("元素:"+string);
}
}
}
控制台输出:
-------------排序前--------------
加入元素:[b, R, 3, K, h, V, h, Y, N]
加入元素:[m, A, V]
加入元素:[T, Y, N, 7, z, 0, v, t]
加入元素:[Y, p, i, I, 6, j]
加入元素:[e, x, f, U, O, 1]
加入元素:[r, F]
加入元素:[e, X, B, z, Q, X]
加入元素:[X, 2]
加入元素:[5, o, u, q, D, H, Y]
加入元素:[u, b]
-------------排序后--------------
元素:[5, o, u, q, D, H, Y]
元素:[T, Y, N, 7, z, 0, v, t]
元素:[X, 2]
元素:[Y, p, i, I, 6, j]
元素:[b, R, 3, K, h, V, h, Y, N]
元素:[e, X, B, z, Q, X]
元素:[e, x, f, U, O, 1]
元素:[m, A, V]
元素:[r, F]
元素:[u, b]