Duda java (listas)

Mc_KaNaN

Tengo en una lista 5 valores:

  • 1
  • 2
  • 3
  • 4
  • 5

Intento que al darle a un "Button" automaticamente cree un String con un numero de esa lista aleatoriamente. Es posible hacerlo de alguna manera?

He llegado a:

String listar;
listar = (String) lista1.getSelectedValue();

Pero el problema es que ese codigo lo que hace es crearme un string con el valor que antes he seleccionado de la lista, yo lo que quiero es que me coja uno aleatoriamente, sin tener que seleccionarlo

B

lista1 que objeto es?

un combobox?

Genera un numero aleatorio entre 1 y el maximo de integrantes en la lista y le dices que te devuelva el valor del indice (el generado aleatoriamente)

B

repe xD

Mc_KaNaN

Lista1 es una jList el problema es que no se que get poner para que me coga el valor del numero aleatorio que salga

Efernand

lista.get(int i) donde "i" es un número aleatorio de rango [0 .. (#elementos -1)]

kas
int elementos = lista.count)(;
int item = rnd(elementos -1);
string resultado = lista.getvalue(item);

Algo asi?

B

o en una sola linea

string s;

s = lista.getValue(rnd(lista.count - 1));

Mc_KaNaN

Me sale un error

kas

Esta clarom que tienes que buscar en la documentacion de java las propiedades y funciones de la clase List.

Nosotros te ponemos un codigo de ejemplo, que no tiene porque compilar, pero que es la base a partir de la que, sin duda, podras encontrar la solucion.

Miminh0

usa el lista.getComponentCount()

pero vamos, ke komo bien dice kas, las apis están para algo :)

Mc_KaNaN

Ya esta solucuionado, gracias :)

Otra pregunta.
Para que en un cuadro multilinea me escriba las cosas sin que me las borre, como he de hacerlo?

uso el:
consola.setText("bla bla");
consola.setText("bla bla");

pero no funciona

Efernand

consola.setText("bla bla1");
consola.setText(consola.getText() + "bla bla2");

Mc_KaNaN

#12 pero ese codigo es como si lo escribiera todo en 1 setText puesto que lo escribe todo en una linea

Miminh0

mete saltos de linea tio :)

B

consola.setText(consola.getText() + "\n" + "bla bla2");

seria algo asi xD

Usuarios habituales