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

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

交個作業?。?!

package com.practice;

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

/**
?* 練習:利用Collections.sort()方法對泛型為String的List排序
?*1、創建List<String> stringList=new ArrayList<String>();往其中添加十條隨機字符串
?*2、每條字符串長度為10以內的隨機整數
?*3、每條字符串的每個字符為隨機生成的字符,字符可以重復
?*4、每條隨機生成的字符串不可以重復
?*/
public class CollectionsSort {

?/*

*創建 返回一個規定長度的字符串的方法

*/
? public static String getRandomString(int length){
????? String str="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
???? //由Random生成隨機數
????? Random random=new Random();
????? //創建一個StringBuffer空對象;
????? StringBuffer sb=new StringBuffer();
????? //循環length次
????? for(int i=0;i<length;i++){
??????? int number=random.nextInt(str.length()-1);
??????? //將length次產生的字符通過加入到sb中
??????? sb.append(str.charAt(number));
????? }
????? //將承載的StringBuffe字符串轉換為String字符串
????? return sb.toString();
? }
?

/*

*創建 含十條隨機字符串的List并實現排序

*/
?
? public static void getRandomStringList(){
??????????? List<String> stringList=new ArrayList<String>();
??????????? Random random=new Random();
??????????? String st;
??????????? for(int i=0;i<10;i++) {
??? ???do {
??? ???st=CollectionsSort.getRandomString(random.nextInt(9)+1);
??? ???}while(stringList.contains(st)); //如果stringList包含生成的字符需要重新生成一個
??? ???stringList.add(st);
??? ???System.out.println("將要添加字符串:"+st);
??? ??}?
? ? ?? 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) {
?? CollectionsSort.getRandomStringList();
?}
?
}


正在回答

1 回答

public String testRandomString() {

StringBuilder stringBuilder = new StringBuilder();

// 存放所包含字符62位

String container = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";

Random random = new Random();

int num = 0;

while (num == 0) {

num = random.nextInt(10);

}

for (int i = 0; i < num; i++) {

int index = random.nextInt(62);

stringBuilder.append(container.charAt(index));

}

return stringBuilder.toString();

}


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

舉報

0/150
提交
取消
Java入門第三季
  • 參與學習       409775    人
  • 解答問題       4546    個

Java中你必須懂得常用技能,不容錯過的精彩,快來加入吧

進入課程

交個作業?。?!

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

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

幫助反饋 APP下載

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

公眾號

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