我的作業(yè)(6-5)
package com.collections.sort;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
/**
?* 練習(xí): 利用Collections.sort()方法對(duì)泛型為String的List進(jìn)行排序 版本2
?*?
?* 1.創(chuàng)建完List<String>之后,往其中添加十條隨機(jī)字符串
?*?
?* 2.每條字符串的長(zhǎng)度為10以?xún)?nèi)的隨機(jī)整數(shù)
?*?
?* 3.每條字符串的每個(gè)字符都為隨機(jī)生成的字符,字符可以重復(fù)
?*?
?* 4.每條隨機(jī)字符串不可重復(fù)
?*?
?*
?*/
public class CollectionsTest {
/**
* 創(chuàng)建List
*?
* @param args
*/
// List是接口可以聲明對(duì)象,但要通過(guò)實(shí)現(xiàn)類(lèi)來(lái)實(shí)例化。
public List<String> string;
/**
* 在構(gòu)造方法中初始化string屬性
*?
* @param args
*/
public CollectionsTest() {
this.string = new ArrayList<String>();
}
public void testStringSort() {
// 添加十條隨機(jī)字符串
Random random = new Random();
String s;// 隨機(jī)字符串
for (int i = 0; i < 10; i++) {// 添加十條隨機(jī)字符串
do {
int s_length = random.nextInt(10);// 每條字符串的長(zhǎng)度為10以?xún)?nèi)的隨機(jī)整數(shù)
s = randomString(s_length);
} while (string.contains(s) && s != null);// 每條隨機(jī)字符串不可重復(fù)
string.add(s);
System.out.println("成功添加字符串:" + s);
}
// 輸出字符串
System.out.println("輸出字符串隨機(jī)數(shù)");
System.out.println("----------排序前----------");
for (String string2 : string) {
System.out.println("隨機(jī)字符串:" + string2);
}
System.out.println("字符串進(jìn)行排序");
System.out.println("----------排序后----------");
Collections.sort(string);
for (String string2 : string) {
System.out.println("隨機(jī)字符串:" + string2);
}
}
public String randomString(int s_length) {
// 產(chǎn)生隨即字符串
Random random = new Random();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < s_length; i++) {
int number = random.nextInt(3);
long result = 0;
switch (number) {
case 0 :
result = Math.round(Math.random() * 25 + 65);//A-Z? A:65
sb.append(String.valueOf((char) result));
break;
case 1 :
result = Math.round(Math.random() * 25 + 97);// a-z? a:97
sb.append(String.valueOf((char) result));
break;
case 2 :
sb.append(String.valueOf(new Random().nextInt(10)));//整數(shù)0-9
break;
}
}
return sb.toString();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
CollectionsTest ct = new CollectionsTest();
ct.testStringSort();
}
}
2020-03-03
我比較喜歡的一個(gè)答案?
2019-05-04
(string.contains(s) && s != null);// 每條隨機(jī)字符串不可重復(fù) ? ?大哥這個(gè)是啥?去查查API