为了账号安全,请及时绑定邮箱和手机立即绑定

我的作业(6-5)

package com.collections.sort;


import java.util.ArrayList;

import java.util.Collections;

import java.util.List;

import java.util.Random;


/**

 * 练习: 利用Collections.sort()方法对泛型为String的List进行排序 版本2

 * 

 * 1.创建完List<String>之后,往其中添加十条随机字符串

 * 

 * 2.每条字符串的长度为10以内的随机整数

 * 

 * 3.每条字符串的每个字符都为随机生成的字符,字符可以重复

 * 

 * 4.每条随机字符串不可重复

 * 

 *

 */

public class CollectionsTest {

/**

* 创建List

* @param args

*/

// List是接口可以声明对象,但要通过实现类来实例化。

public List<String> string;

/**

* 在构造方法中初始化string属性

* @param args

*/

public CollectionsTest() {

this.string = new ArrayList<String>();

}


public void testStringSort() {

// 添加十条随机字符串

Random random = new Random();

String s;// 随机字符串

for (int i = 0; i < 10; i++) {// 添加十条随机字符串

do {

int s_length = random.nextInt(10);// 每条字符串的长度为10以内的随机整数

s = randomString(s_length);

} while (string.contains(s) && s != null);// 每条随机字符串不可重复

string.add(s);

System.out.println("成功添加字符串:" + s);

}


// 输出字符串

System.out.println("输出字符串随机数");

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

for (String string2 : string) {

System.out.println("随机字符串:" + string2);

}

System.out.println("字符串进行排序");

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

Collections.sort(string);

for (String string2 : string) {

System.out.println("随机字符串:" + string2);

}

}


public String randomString(int s_length) {

// 产生随即字符串

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)));//整数0-9

break;

}

}

return sb.toString();

}


public static void main(String[] args) {

// TODO Auto-generated method stub

CollectionsTest ct = new CollectionsTest();

ct.testStringSort();

}


}


正在回答

2 回答

我比较喜欢的一个答案?

0 回复 有任何疑惑可以回复我~

(string.contains(s) && s != null);// 每条随机字符串不可重复    大哥这个是啥?去查查API

0 回复 有任何疑惑可以回复我~
#1

backham

方法contains
2019-05-04 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第三季
  • 参与学习       409792    人
  • 解答问题       4340    个

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

进入课程

我的作业(6-5)

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信