導航:首頁 > 編程語言 > java隨機數生成的位數

java隨機數生成的位數

發布時間:2022-03-03 03:21:14

java 如何創建一個類或方法能夠給出產生指定位數的一個隨機數

//代碼如下:
publicstaticintgetNum(intsize)throwsException{
StringBuffersb=newStringBuffer();
if(size>1){
for(inti=0;i<size;i++){
while(i==0){
inttemp=(int)(Math.random()*10);
if(temp!=0){
sb.append(temp);
i++;
break;
}
}
sb.append((int)(Math.random()*10));

}
}elseif(size==1){
sb.append((int)(Math.random()*10));
}else{
thrownewException("輸入的位數不正確!");
}
returnInteger.parseInt(sb.toString());
}

❷ java中怎麼隨機生成3位整數.

public int getRandom() {
int number = 0;
while (true) {
number = (int) (Math.random() * 1000);
if (number >= 100 && number < 1000) {
break;
}
}
return number;
}

❸ java生成隨機三位數

public class Test2
{

public static void main(String [] srgs)
{
int i=(int)(Math.random()*900)+100;
//int i= new java.util.Random().nextInt(900)+100;也可以
System.out.println(i);

}
}
也就是要求100到999之間的隨機數,
Math.random()返回的是0到1之間的隨機數,返回類型為double型,大於等於0,小於1,
引用JDK1.6api
public static double random()返回帶正號的 double 值,該值大於等於 0.0 且小於 1.0。返回值是一個偽隨機選擇的數,在該范圍內(近似)均勻分布。

Math.random()*900,就是0到900之間的數了,可以取到0,但是取不到900,但是這個乘積是double類型的,將它強制轉換成int類型,然後加上100,就變成了可以取到100,但是取不到1000.完畢

❹ 在JAVA里怎麼獲得9~11位的隨機數

獲取隨機數的方法,參數是需要獲取的隨機數的長度
/**
* 需要的長度
* @param length
*/
private static void getRadom(int length){
//獲取一個隨機數
double rand = Math.random();
//將隨機數轉換為字元串
String str = String.valueOf(rand).replace("0.", "");
//截取字元串
String newStr = str.substring(0, length);
System.out.println(newStr);
}
其實就是利用Math.random()方法生成一個隨機的double數,然後轉換為字元串,在字元串中去做操作

❺ java 隨機數固定位數

importjava.math.BigDecimal;
importjava.util.Random;

publicclassRandomDemo{
publicstaticvoidmain(String[]args){
Randomrd=newRandom();
doublexr=rd.nextDouble()*100;
BigDecimalb=newBigDecimal(xr);
//參數說明2代表保留2為小數BigDecimal.ROUND_HALF_UP四捨五入
doublex=b.setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
System.out.println(x);
}
}

❻ 請問java生成任意位數的隨機數

是這樣的,java裡面是沒有這樣的直接的函數的,樓上的只是說輸出一個小於1的固定小數點的隨機數字,我想樓主的意思是說隨機生成隨意的整數吧,我可以隨機輸出1-10位(計算機不可能輸出沒有位限制的數字,它隨機生成的後面一般都是固定的位數,我用代碼實現了在1-10位隨機)的整數,如果你還要小數,就自己在代碼上加上一個隨機小數就ok啦,請看代碼:public class RandomTest
{
public static void main(String[] args)
{
double rd=Math.random();
int max=(int)(Math.random()*10);
System.out.println("此次生成的數字的位數為:"+max+"位");
for(int i=0;i<max;i++) {
rd=rd*10;
}
double result=rd-rd%1;
java.text.DecimalFormat df =new java.text.DecimalFormat("#");
String end=df.format(result);
System.out.println("結果是: "+end);
}
}

❼ JAVA 獲取一個四位隨機數(並且四位數不重復),並說明原理和演算法

import java.util.*;
public class Get4Number {
public static void main(String[] args) {
System.out.println(getNumber());
}
/** 得到一個0-9的隨機數 */
private static int getRandomNumber() {
return (int) ((Math.random() * 100) % 10);
}
/** 得到一個四位無重復數字的數 */
private static int getNumber() {
Set<Integer> set = new HashSet<Integer>();
while (true) {
int a = getRandomNumber();
set.add(new Integer(a));//Set裡面的元素是不重復的,如果重復是存不進去的。
if(set.size()>3)
break;
}
int index = (int) ((Math.random() * 100) % 4);
if(index==0){index+=1;}
Integer[] arr = new Integer[set.size()];
set.toArray(arr);
String s = "";
if(arr[0].intValue()==0){//如果第一位是0,則隨機和後面三位交換
Integer temp = arr[0];
arr[0] = arr[index];
arr[index] = temp;
}
for(int i=0;i<arr.length;i++){
s += arr[i].intValue();
}
return Integer.parseInt(s);
}
}

❽ Java如何得到一個18位的隨機數

既然你能接受18為的數,那你可以用Math.random()*1000000000000000000得到。
如果說Math.random()不能精確到18位的話,當然我懶得去看,你自己試試到底能精確幾位,比如只能精確到6位,那麼如果隨機數乘以1億,得到的是前六位是隨機的,你可以再做一個剩餘幾位的隨機數加到前面那個隨機數裡面進去,這樣得到的應該是個1億內的隨機數。
那你可以這么做,
Math.random*10000000000000000000+Math.random()*1000000000000+Math.random()*10000000;同理,其他任意位的數字可以得到。

❾ java 隨機生成一個六位數

publicclassGuessNum{
publicstaticvoidmain(String[]args){
inti=getRandomNum();
System.out.println("已生成隨機數!");
System.out.println(i);//方便測試列印出隨機數~~可刪除~~
while(true){
try{
System.out.print("請輸入一個6位正"+"整數:");
Readerreader=newInputStreamReader(System.in);
char[]b=newchar[6];
reader.read(b);
StringguessStr=newString(b).trim();
intguessInt=Integer.parseInt(guessStr);
if(guessInt==i){
System.out.println("恭喜猜對!");
break;
}
System.out.println("不對重猜!");
}catch(Exceptione){
System.out.println("輸入有誤!");
}
}
}

privatestaticintgetRandomNum(){
Randomr=newRandom();
returnr.nextInt(900000)+100000;
}
}

❿ java編碼中怎樣產生四位隨機數

用這個代碼:

java.util.Randomrandom=newjava.util.Random();
inta=random.nextInt(9000)+1000;//生成從0-指定數(不包括指定數)的整數

從1000-9999;可以看成從0+1000——8999+1000

閱讀全文

與java隨機數生成的位數相關的資料

熱點內容
優信二手車解壓後過戶 瀏覽:63
Windows常用c編譯器 瀏覽:780
關於改善國家網路安全的行政命令 瀏覽:835
安卓如何下載網易荒野pc服 瀏覽:656
javainetaddress 瀏覽:106
蘋果4s固件下載完了怎麼解壓 瀏覽:1005
命令zpa 瀏覽:288
python編譯器小程序 瀏覽:946
在app上看視頻怎麼光線調暗 瀏覽:541
可以中文解壓的解壓軟體 瀏覽:594
安卓卸載組件應用怎麼安裝 瀏覽:914
使用面向對象編程的方式 瀏覽:341
程序員項目經理的年終總結範文 瀏覽:932
內衣的加密設計用來幹嘛的 瀏覽:434
淮安數據加密 瀏覽:294
魔高一丈指標源碼 瀏覽:983
松下php研究所 瀏覽:169
c回調java 瀏覽:402
夢幻端游長安地圖互通源碼 瀏覽:747
電腦本地文件如何上傳伺服器 瀏覽:315