Foros del Web » Programación para mayores de 30 ;) » Java »

Convertir String[] a String

Estas en el tema de Convertir String[] a String en el foro de Java en Foros del Web. Hola amigos, para convertir un Objeto String[] a String , supongo es.. String[] months = {"January", "February", "March", "April", "Mei", "June", "July", "August", "September", "October", ...
  #1 (permalink)  
Antiguo 13/05/2012, 00:22
 
Fecha de Ingreso: septiembre-2010
Mensajes: 350
Antigüedad: 13 años, 7 meses
Puntos: 9
Exclamación Convertir String[] a String

Hola amigos, para convertir un Objeto String[] a String , supongo es..

String[] months = {"January", "February", "March", "April", "Mei", "June",
"July", "August", "September", "October", "November", "December"};

months[1].toString() o (String)months[1],

Pero no entiendo porque me marca error eclipse, tengo una clase la cual es:

Código PHP:
private class TestItem {
    private 
String shortName;
    private 
String longName;
    
    public 
TestItemString sString l ) {
        
shortName s;
        
longName l;
    }
    
    public 
String toString() {
        return 
shortName;
    }
    
    public 
String getToolTipText() {
        return 
longName;
    }

Entonces si se dan cuenta recibe un String,

Pero si yo hago esto:

Código PHP:
 Vector v = new Vector();
  for(
int i=0;i<=months.length;i++){
    
v.add( new TestItemmonths[i].toString(), "Pruebas" ) );
}
JComboBox comboBox = new JComboBox(v); 
Al ingresar los elementos en el TestItem me marca error,

Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 12
at comboBox.ComboBoxCreate.initialize(ComboBoxCreate. java:37)

Si yo hago esto:

Código PHP:
 Vector v = new Vector();
  for(
int i=0;i<=months.length;i++){
    
v.add( new TestItem"January""Pruebas" ) );
}
JComboBox comboBox = new JComboBox(v); 
Obiviamente funciona, pero se supone que "January" es igual a months[1].toString() no entiendo que esta mal ?

Espero me puedan ayudar,
Gracias!!
  #2 (permalink)  
Antiguo 13/05/2012, 00:37
 
Fecha de Ingreso: abril-2011
Mensajes: 224
Antigüedad: 13 años
Puntos: 8
Respuesta: Convertir String[] a String

Yo lo que haría es esto:

String cadenaCompleta;

for(String a : months)
cadenaCompleta = string.format("%s %s", cadenaCompleta, a);

O algo parecido, no recuerdo si debería inicializar el String.

Saludos!
  #3 (permalink)  
Antiguo 13/05/2012, 04:11
 
Fecha de Ingreso: mayo-2012
Ubicación: UK
Mensajes: 9
Antigüedad: 12 años
Puntos: 5
Respuesta: Convertir String[] a String

Tienes que resolver el problema que tienes, es decir:

java.lang.ArrayIndexOutOfBoundsException: 12

cambia las condiciones del for:

De:
for(int i=0;i<=months.length;i++) (Cuentas 13 elementos)

A:
for(int i=0;i<months.length;i++) (Cuentas 12 elementos)
  #4 (permalink)  
Antiguo 13/05/2012, 10:42
 
Fecha de Ingreso: septiembre-2010
Mensajes: 350
Antigüedad: 13 años, 7 meses
Puntos: 9
Exclamación Respuesta: Convertir String[] a String

Cita:
Iniciado por adrianS Ver Mensaje
Tienes que resolver el problema que tienes, es decir:

java.lang.ArrayIndexOutOfBoundsException: 12

cambia las condiciones del for:

De:
for(int i=0;i<=months.length;i++) (Cuentas 13 elementos)

A:
for(int i=0;i<months.length;i++) (Cuentas 12 elementos)
Jajajaja tienes toda la razon no me percate de ese detalle, me fuí con la idea que era la converción error de novato :S, me afecto la madrugada jaja Muchas gracias! ya funciona
  #5 (permalink)  
Antiguo 14/05/2012, 16:38
Avatar de zero0097  
Fecha de Ingreso: abril-2010
Ubicación: México
Mensajes: 481
Antigüedad: 14 años
Puntos: 69
Respuesta: Convertir String[] a String

lee los errores claramente dice (en inglés pero lo dice).... "indice del arreglo fuera de rango", siempre se da cuando cuentas una posicion que no existe en el array....

ademas dices que enero es months[1].toString().......y no, recuerda que los arrays inician desde 0
months[0] es enero
months[1] seria febrero
__________________
De nada, hay te encargo +1...

Etiquetas: clase, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:35.