2010-11-18 30 views
2

如何根據生成的隨機數向用戶顯示帶有說法的基本彈出窗口。我想用一個switch語句,但只是顯示所有的說法,即:如何根據隨機數顯示不同的說法

int random = (int) Math.ceil(Math.random() * 5); 

     switch(random){ 
      case 1: 
       showToast(this, "Saying 1."); 

      case 2: 
       showToast(this, "Saying 2."); 
} 

等....

就像我說的,這顯示了所有5 case語句,有沒有更好的辦法根據數字隨機生成並顯示,或者我是否全都做錯了?

謝謝!

+0

我想到了這一次。但是當我不能回答的時候,我給了他:Whatif有1000個說法。不能有1000個swtch案例。這裏的答案也會使我受益:) – theTuxRacer 2010-11-18 05:23:00

+1

老兄......我錯過了休息時間; :) – amithgc 2010-11-18 07:36:59

回答

4

交換機內部的case語句「fall through」,如果你不是其中的break

它應該是這樣的:

switch(random) { 
    case 1: 
     statement; 
     break; 
    case 2: 
     statement; 
     break; 
... 
} 

break語句跳轉到switch語句的下一行。

0

你也可以嘗試一些東西一樣

String[] sayings = {"Saying 1.", "Saying 2.", "Saying 3.", "Saying 4.", "Saying 5."}; 
int random = (int) Math.ceil(Math.random() * 5); 
showToast(this, sayings[random]); 

,如果你有更多的項目,那麼你可以使用動態前準備的字符串數組。

0

如果有很多的說法......你也可以把一個.txt文件在您的資產與衆多說法(每行一個),閱讀和一個隨機生成的行號顯示說文件夾..

Activity.getAssets().open("sayingsfile.txt");