按照老师的随便写写

来源:6-5 应用 Collections.sort() 实现 List 排序

西红柿炒苹果

2015-03-08 17:23

package imooc.com;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
import java.util.Scanner;

public class RandomString {
	
	public void getRandomString(int length){
		
		/** 
		 * 根据输入的字符串长度,实现随机生成字符串
		 * 当字符串不重复时,添加到list
		 * 打印添加成功的List
		 *  Collection排序后打印
		 */
		
		//作为字符串的字符库
		String base="qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM1234567890";
		
		List <String> stringList=new ArrayList<String>();
		
		Random random=new Random();
		//开始随机添加字符串
		for(int j=0;j<10;j++){
			StringBuffer s=new StringBuffer();
			do{
				
				for(int i=0;i<length;i++){
		//开始随机添加字符
					int getSeq=random.nextInt(base.length());
					s.append(base.charAt(getSeq));
					}
		}while(stringList.contains(s.toString()));
			stringList.add(s.toString());
			System.out.println("将要添加:"+s);
		}
		
		System.out.println("----------排序前---------");
		
		for (String string : stringList) {
			System.out.println("元素:"+string);
		}
		
		//字符串排序啦
		Collections.sort(stringList);
		
		System.out.println("----------排序后---------");
		for (String string : stringList) {
			System.out.println("元素:"+string);
		}
		
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//创建输入的Scanner类
		
		Scanner console= new Scanner(System.in);
		
		System.out.println("请输入随机生成的字符串长度:");
		int length=console.nextInt();
		
		RandomString stringRand=new RandomString();
		stringRand.getRandomString(length);

	}

}


写回答 关注

1回答

  • 甜甜2016
    2015-12-22 10:22:06

    very good!

Java入门第三季

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

409792 学习 · 4340 问题

查看课程

相似问题