2010-11-22 12 views
0

st9'a kadar st1, st2, st3, vs ... gibi bir dizi dizim var. Rastgele oluşturulmuş bir sayıdan yola çıkarak o dizelerden birini rastgele gösteren bir yönteme sahip olmak istiyorum ... Birisi bana bunu nasıl yapacağımı gösterebilir mi?Dizeleri rasgele gösterme -

Teşekkürler!

+0

Bu soruyu kaç defa soracaksınız? Bu konuya ve diğer konulara diğer sorulara zaten sordunuz ve bu sorulara cevaplar aldınız. – Squonk

cevap

2

Onları bir diziye yerleştirmek ve oluşturduğunuz rasgele sayının size bildirdiği dizinin üyesine erişmek isteyeceksiniz.

Android genellikle böylece java anlamı:

import java.util.Random 

Random rand = new Random(); 


String[] myarray = new String[]{st1, st2, st3, st4, st5, st6, st7, st8, st9}; 
int myrand = rand.nextInt(8); 
System.out.println(myarray[myrand]); 

bana herhangi minör sözdizimi hatalarını bağışla, Java programlanmış beri bir süre oldu. Eğer strings.xml tanımlanan dizeleri bir dizi varsa

+0

hakkında hiçbir şey bilmiyorum, o android programlamada. – Sapp

+0

Normal kodda basit bir örneğiniz olur mu? Yani: Droid'te nasıl çağırılır? Çok teşekkürler! – Sapp

+0

Android platformunda en yaygın kullanılan dil olan java'yı kullandığınız varsayımı altında yayını güncelledim. – OmnipotentEntity

1

Dizelerinizi bir diziye yerleştirin, sıfır ile dizi dizisinin uzunluğu arasında rastgele bir tam sayı seçin ve diziye dizilecek diziyi kullanın.

+0

Bir dizim yok olsa da, farklı bir etiketle yazdığım tek tek dizelerim var farklı bir şekilde = x – Sapp

+0

Evet, gönderdikten hemen sonra, cevabımı düzenlediğimi anladım. Dize dizisi kullanmak mümkün değil mi? –

+0

Maalesef, Android'deki dizilere aşina değilim, bana bir örnek gösterebilir misiniz? – Sapp

0

o zaman bu gibi daha fazla görünecektir:

import java.util.Random 

Random rand = new Random(); 

int[] myarray = new int[]{ 
    R.strings.my_string_1, 
    R.strings.my_string_2, 
    R.strings.my_string_3, 
    R.strings.my_string_4 
}; 
int myrand = rand.nextInt(myarray.length-1); 
System.out.println(getText(myarray[myrand])); 

Bu getText yöntem kullanılabilir bir Activity içinde yapıyoruz varsayar.