>

Fórum

Fórum da RL System, voltado para analistas, programadores etc. Tudo sobre linguagem de programação e desenvolvimento Full Stack: Banco de Dados, Android, C#, Java, .NET, PHP, Node, Javascript, TypeScript, Front, HTML e muito mais.



Procura aleatória numa string array e mostrar o dado


Caros, boa tarde.

Estou com dificuldade em fazer um aplicativo que mostra uma informação que é coletada aleatoriamente em uma String Array.

Criei uma classe Lista.java


public class Lista {

/**
* @param args
*/
public static void main(String args[]) {

String[] lista;
lista = new String[3];
lista[0] = "a";
lista[1] = "b";
lista[2] = "c";


Na MainActivity, eu coloco:

TextView mensagem = new (TextView)findViewById(R.id.textView2);
Random num = new Random();
Resposta (num.nextInt(3));

for (res = 0; res < Lista; res++)
{
mensagem.setText(Lista[res]);
}


Ao final, quando eu tento rodar em um dispositivo, aparece mensagem de erro, falando que o programa parou.
Vocês podem me ajudar? O que estou fazendo de errado?

Obrigado
João Felipe



5 Respostas


Olá

Qual o erro gerado?




Olá,

Sempre aparece a letra C.




Imprima o valor de num.nextInt(3)

E veja o valor que é retornado.




Boa tarde.

Alterei o código, pois aquele não estava funcionando nem com reza baba. (kkkk)...

Mas agora, quando eu tento rodar o programa aparece que o programa parou de funcionar. Creio que estou fazendo alguma coisa de errado na hora de mostrar o resultado final, pois os números estão aparecendo aleatoriamente.

Meu problema está em mostrar a mensagem aleatoriamente. Consigo gerar os números aleatórios, mas não consigo utilizá-los como apontador na lista.

Obrigado.

Segue o código:


public class MensagemActivity extends ActionBarActivity {

TextView mensagem;
String[] lista;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mensagem);

mensagem = (TextView)findViewById(R.id.textView1);
lista = new String[5];
lista[0] = "a";
lista[1] = "b";
lista[2] = "c";
lista[3] = "d";
lista[4] = "e";
lista[5] = "f";

Random num = new Random();
int max = 5;
int resultado = num.nextInt(max);

for (resultado = 0; resultado < lista.length; resultado ){

mensagem.setText(lista[resultado]);
}





João

Precisamos saber exatamente o erro gerado.

Imprima o valor de num.nextInt(3)

E veja o valor que é retornado.