String的List排序版本2
解释全跟在代码后面…包名为collenction
.
charAt()好像没学过。功能是就获取字符串中某个字符
例子:String a = "ASDFG"; char b = a.charAt(3); 那么b就为'F'了
.
代码效果:
随机10个字符串,存入List中,然后排序,输出。每个字符串长度为随机1-10
package collenction;
import java.util.Collections;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class CollectionTest {
public static void main(String[] args) {
CollectionTest ct = new CollectionTest();
ct.testSort();
}
public void testSort() {
List<String> stringList = new ArrayList<String>();//创建String的List
Random random = new Random();
int total = 10;//一共total个字符串
int length = 10;//每个字符串最长length个字符
String c = "1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
String string;
for(int i=0;i<total;i++) {
StringBuilder s = new StringBuilder();//StringBulider的数组可以加长
do {
int r = random.nextInt(length)+1;//随机一个[1到length]的整数长度
for(int ii=0;ii<r;ii++) {
s.append(c.charAt(random.nextInt(c.length())));
//解释:功能-把字符一个一个添加给s
//append是StringBuilder的字符串添加
//chatAt(n)获取字符串中第n位的那个字符
//random.nextInt(n)随机[0-n)内的整数
}
string = s.toString();//把s传给string
}while(stringList.contains(string));//List里已有则再一次
stringList.add(string);//把string添加进List
System.out.println(string);//输出排序前的List
}
Collections.sort(stringList);//整理
System.out.println("--------------排序后-------------");
for (String strings : stringList) {
System.out.println(strings);
}
}
}