亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

取隨機字符串方法代碼,望各位指教

	public?void?testSort2(){
		List<String>?stringList?=?new?ArrayList<String>();
		Random?random?=?new?Random();
		String?basic?=?"0123456789abcdefghijklmnopqrstuvwxyz"
				+?"ABCDEFGHIJKLMNOPQRSTUVWXYZ";
		for(int?i=0;i<10;i++){
			StringBuffer?sb?=?new?StringBuffer();
			int?num?=?random.nextInt(10)+1;
			do{
			??for(int?j=0;j<num;j++){
				??int?number?=?random.nextInt(basic.length());
				??sb.append(basic.charAt(number));
			??}
		????}while(stringList.contains(sb));
			String?stringSb?=sb.toString();
		????stringList.add(stringSb);
			System.out.println("添加了字符串:"+stringSb);
		}
		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);
		}
	}


正在回答

5 回答

我有個問題想要問你一下

?int?num?=?random.nextInt(10)+1;

這里面在任意規定字符串的長度的時候為什么不能用

?int?num?=?random.nextLine(10)+1;

而且我用的時候還報錯了?

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

代碼給些注釋唄!

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

對不起,沒看全,沒問題,是我理解錯了

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

你去重有點問題;

?for(int j=0;j<num;j++){?

? ? ? ? do{

? ? ? ? ?//取basic內任意下標

? ? ? ? ? ? ?int number = random.nextInt(basic.length());

? ? ? ? ? ? ?sb.append(basic.charAt(number));

? ? ? ? ?

? ? ? ?}while(stringList.contains(sb));

? ? ? ?}


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

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

public class listContainTest {
?public List<String> dataList;
?public List<Character> characterList;
?
?public void initlizeCharacterList(){
??//數字字符
??for (Character c = '0'; c<='9'; c++){
???characterList.add(c);
??}
??//大寫字母
??for (Character c = 'A'; c<='Z'; c++){
???characterList.add(c);
??}
??//小寫字母
??for (Character c = 'a'; c<='z'; c++){
???characterList.add(c);
??}
?}
?/*
? * list、set、map聲明變量時,要在構造器中或其他地方進行初始化操作
? */
?public listContainTest(){
??dataList = new ArrayList<String>();
??characterList = new ArrayList<Character>();
?}
?/**
? * @param args
? */
?public static void main(String[] args) {
??// TODO Auto-generated method stub
??listContainTest lct = new listContainTest();
??lct.initlizeCharacterList();
??Random rand = new Random();
??for (int i=0; i<10; i++){
???String stTemp = "";
???do{
????int k = rand.nextInt(9)+1;
????for (int j=0; j<k; j++){
?????int ipos = rand.nextInt(lct.characterList.size());
?????stTemp += lct.characterList.get(ipos).toString();
????}
????//判斷字符串是否在字符串列表中
???}while(lct.dataList.contains(stTemp));
???lct.dataList.add(stTemp);
??}
??//打印未排序字符串
??System.out.println("---------未排序字符串---------------");
??for (int i=0; i<10; i++){
???System.out.println(lct.dataList.get(i));
??}
??
??//排序后字符串
??System.out.println("---------排序后字符串---------------");
??Collections.sort(lct.dataList);
??for (int i=0; i<10; i++){
???System.out.println(lct.dataList.get(i));
??}
?}

}

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

舉報

0/150
提交
取消

取隨機字符串方法代碼,望各位指教

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號