Что такое Java-эквивалент NSArrays и arc4random? - PullRequest
3 голосов
/ 05 февраля 2012

В настоящее время я начинаю портировать одно из своих приложений на Android и застрял на базовом уровне, в основном в своем приложении я установил NSArray, а затем позвонил:

int chosen = arc4random() % [array count];
textOutput.text = [array objectAtIndex: chosen];

, но я могуКажется, что это не получается в Android.

Все, что мне нужно, это установить массив вручную, а затем случайным образом выбрать из него строку.

----- Как мне это удалось -----

ArrayList<String> array = new ArrayList<String>();
array((new String("Blah, blah.")));
String randString = new String();
randString = array(new Random().nextInt(array()));  
textBox.setText(randString, TextView.BufferType.EDITABLE);

Ответы [ 2 ]

6 голосов
/ 05 февраля 2012

Java-эквивалентом NSArray был бы java.util.List с его различными реализациями, такими как, например, java.util.ArrayList. (или, точнее, List больше похож на NSMutableArray, поскольку в Java нет ничего похожего на неизменяемые списки).

Чтобы создать случайное число, вы можете использовать java.util.Random, например:

Random rnd = new Random();
int randomListIndex = rnd.nextInt(myList.size());
3 голосов
/ 05 февраля 2012

Jut сделать что-то вроде

import java.util.Random;
// ...
textOutput.text = theArray[new Random().nextInt(theArray.length)];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...