使用隨機(jī)數(shù) Math.random()
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:國際域名空間、雅安服務(wù)器托管、營銷軟件、網(wǎng)站建設(shè)、磁縣網(wǎng)站維護(hù)、網(wǎng)站推廣。
然后比如隨機(jī)數(shù)范圍你設(shè)置為0~2
那么隨機(jī)數(shù)=0的時(shí)候你就輸出System.out.println("1");
那么隨機(jī)數(shù)=1的時(shí)候你就輸出System.out.println("2");
類推
然后你就可以寫一個(gè)循環(huán)每次生成一個(gè)隨機(jī)數(shù),然后根據(jù)隨機(jī)數(shù)來顯示
一、利用random方法來生成隨機(jī)數(shù)。
在Java語言中生成隨機(jī)數(shù)相對來說比較簡單,因?yàn)橛幸粋€(gè)現(xiàn)成的方法可以使用。在Math類中,Java語言提供了一個(gè)叫做random的方法。通過這個(gè)方法可以讓系統(tǒng)產(chǎn)生隨機(jī)數(shù)。
二、通過Random類來生成隨機(jī)數(shù)。
在Java語言中,除了可以通過random 方法來產(chǎn)生隨機(jī)數(shù)之外,還可以通過一個(gè)random類來產(chǎn)生隨機(jī)數(shù)。程序開發(fā)人員可以通過實(shí)例化一個(gè)Random對象來創(chuàng)建一個(gè)隨機(jī)數(shù)的生成器。如 Random i=new Random()。通過這條語句就利用了Random類創(chuàng)建了一個(gè)隨機(jī)數(shù)的生成器。數(shù)
三、產(chǎn)生隨機(jī)的字符。
可以利用random方法來產(chǎn)生隨機(jī)字符。如可以利用代碼生成一個(gè)隨機(jī)的小寫字符:(char)(‘a(chǎn)’+Math.random()*(‘z’-‘a(chǎn)’+1))。其實(shí)這跟生成任意兩個(gè)數(shù)之間的隨機(jī)數(shù)類似。通過以上的代碼就可以生成一個(gè)范圍之內(nèi)的任意隨機(jī)字符。通過對這個(gè)代碼進(jìn)行適當(dāng)?shù)男拚?,還可以生成任意兩個(gè)字符之間的隨機(jī)字符與任意大寫字符的隨機(jī)字符。其轉(zhuǎn)換的方式跟上面提到的任意范圍之內(nèi)的隨機(jī)數(shù)類似。
下面來了解下隨機(jī)數(shù)的運(yùn)用:
在統(tǒng)計(jì)學(xué)的不同技術(shù)中需要使用隨機(jī)數(shù),比如在從統(tǒng)計(jì)總體中抽取有代表性的樣本的時(shí)候,或者在將實(shí)驗(yàn)動(dòng)物分配到不同的試驗(yàn)組的過程中,或者在進(jìn)行蒙特卡羅模擬法計(jì)算的時(shí)候等等。
真正的隨機(jī)數(shù)是使用物理現(xiàn)象產(chǎn)生的:比如擲錢幣、骰子、轉(zhuǎn)輪、使用電子元件的噪音、核裂變等等。這樣的隨機(jī)數(shù)發(fā)生器叫做物理性隨機(jī)數(shù)發(fā)生器,它們的缺點(diǎn)是技術(shù)要求比較高。
在實(shí)際應(yīng)用中往往使用偽隨機(jī)數(shù)就足夠了。這些數(shù)列是“似乎”隨機(jī)的數(shù),實(shí)際上它們是通過一個(gè)固定的、可以重復(fù)的計(jì)算方法產(chǎn)生的。計(jì)算機(jī)或計(jì)算器產(chǎn)生的隨機(jī)數(shù)有很長的周期性。它們不真正地隨機(jī),因?yàn)樗鼈儗?shí)際上是可以計(jì)算出來的,但是它們具有類似于隨機(jī)數(shù)的統(tǒng)計(jì)特征。這樣的發(fā)生器叫做偽隨機(jī)數(shù)發(fā)生器。
在真正關(guān)鍵性的應(yīng)用中,比如在密碼學(xué)中,人們一般使用真正的隨機(jī)數(shù)。
C語言、C++、C#、Java、Matlab等程序語言和軟件中都有對應(yīng)的隨機(jī)數(shù)生成函數(shù),如rand等。
java生成隨機(jī)字符串,主要是先建立一個(gè)26字符的字符串,然后使用random類來隨機(jī)選擇,拼接成一個(gè)新的字符串,如下代碼:
package com.qiu.lin.he; import java.util.Random; public class Ceshi { public static void main(String[] args) { System.out.println(getRandomString(10));//調(diào)用隨機(jī)生成字符串的方法,并打印出來 } public static String getRandomString(int length) { String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";//含有字符和數(shù)字的字符串 Random random = new Random();//隨機(jī)類初始化 StringBuffer sb = new StringBuffer();//StringBuffer類生成,為了拼接字符串 for (int i = 0; i length; ++i) { int number = random.nextInt(62);// [0,62) sb.append(str.charAt(number)); } return sb.toString(); }}
import java.util.Random;
public class Demo {
public static void main(String[] args) {
String[] str ={"一","二","三","四","五","六","七","八","九","十"};
//演示漢字,里面的漢字自己更改
Random r= new Random();
int i = r.nextInt(10);
System.out.println("隨機(jī)產(chǎn)生的第"+(i+1)+"位數(shù):"+str[i]);
}
}
public class Test{
public static void main(String[] args){
String str = "sdswe我是是倒薩";
int num = 0;
String array = "";
for(int i = 0;istr.length();i++){
char ch = str.charAt(i);
if((ch+"").getBytes().length == 2){
array += ch;
}
}
System.out.println(array);
char[] a = array.toCharArray();
System.out.println(a);
}
}