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

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

老師,為什么,添加的隨機字符中間會有點,怎么去掉

package collection;


import java.util.Random;

import java.util.Scanner;

import java.util.ArrayList;

import java.util.List;


public class randomString {



private static final Exception OutException = new Exception("超出范圍");




public static void main(String[] args) {

// TODO Auto-generated method stub

try {

Scanner input = new Scanner(System.in);

System.out.println("請輸入數組個數1~29的數字:");

int num = input.nextInt();

List <Integer> size = randSize(num);

List <String> arry = randString(size);

for (int i = 0 ; i < arry.size(); i++) {

System.out.println(arry.get(i));

}

}catch(Exception e) {

System.out.println(e);

}

}



//生產隨機長度

public static List<Integer> randSize(int size) throws java.lang.Exception? {

//創建數值類 泛型 Integer

List <Integer> sizeOfStr = new ArrayList<Integer>();

//創建 random 對象 randSize

Random randsize = new Random();

//10以內隨機值賦值給sizeOfStr數組,個數為size

int k;

if (size >= 30 || size < 1) {

throw OutException;

}

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

do {

k = randsize.nextInt(30);

}while(sizeOfStr.contains(k)||k==0);

sizeOfStr.add(k);

}

System.out.println(sizeOfStr);

return sizeOfStr;

}

//產生字符串

public static List <String> randString(List randSize ) {

List <String> randStr = new ArrayList <String>();

List <Character> randChr? = new ArrayList <Character>();

Random randChar = new Random();

for(int i = 0 ; i < randSize.size(); i++) {

//每一組賦值

for(int j = 0 ; j < (int)randSize.get(i); j++ ) {

randChr.add((char)(Math.abs(randChar.nextInt())%(127 -32 +1)+32));

}

randStr.add(randChr.toString());

randChr.clear();

}

randStr.add("done");

return randStr;

}


}


正在回答

1 回答

package collection;


import java.util.Random;

import java.util.Scanner;

import java.util.ArrayList;

import java.util.Collections;

import java.util.List;


public class randomString {



private static final Exception OutException = new Exception("超出范圍");




public static void main(String[] args) {

// TODO Auto-generated method stub

try {

Scanner input = new Scanner(System.in);

System.out.println("請輸入數組個數1~29的數字:");

int num = input.nextInt();

List <Integer> size = randSize(num);

List <String> arry = randString(size);

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

for (String i : arry) {

System.out.println("第"+((int)arry.indexOf(i)+1)+"行:"+i);

}

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

Collections.sort(arry);

for (String i : arry) {

System.out.println("第"+((int)arry.indexOf(i)+1)+"行:"+i);

}

}catch(Exception e) {

System.out.println(e);

}

}



//生產隨機長度

public static List<Integer> randSize(int size) throws java.lang.Exception? {

//創建數值類 泛型 Integer

List <Integer> sizeOfStr = new ArrayList<Integer>();

//創建 random 對象 randSize

Random randsize = new Random();

//10以內隨機值賦值給sizeOfStr數組,個數為size

int k;

if (size >= 30 || size < 1) {

throw OutException;

}

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

do {

k = randsize.nextInt(30);

}while(sizeOfStr.contains(k)||k==0);

sizeOfStr.add(k);

}

System.out.println(sizeOfStr);

return sizeOfStr;

}

//產生字符串

public static List <String> randString(List randSize ) {

List <String> randStr = new ArrayList <String>();

Random randChar = new Random();

for(int i = 0 ; i < randSize.size(); i++) {

//每一組賦值

StringBuilder randChr? = new StringBuilder();

for(int j = 0 ; j < (int)randSize.get(i); j++ ) {

randChr.append((char)(Math.abs(randChar.nextInt())%(127 -32 +1)+32));

}

randStr.add(randChr.toString());

}

return randStr;

}


}


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

舉報

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

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

進入課程

老師,為什么,添加的隨機字符中間會有點,怎么去掉

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

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

幫助反饋 APP下載

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

公眾號

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