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

curioso error del java

Estas en el tema de curioso error del java en el foro de Java en Foros del Web. que raro, se supone que el codigo recorta ".txt" y lo compara con ".txt" y dice que es diferente ... como es posible que diga ...
  #1 (permalink)  
Antiguo 24/06/2008, 23:34
 
Fecha de Ingreso: junio-2008
Mensajes: 16
Antigüedad: 15 años, 10 meses
Puntos: 0
curioso error del java

que raro, se supone que el codigo recorta ".txt" y lo compara con ".txt" y dice que es diferente ...
como es posible que diga que son diferentes??

Código PHP:
  String files "...filedark.txt";

if(
files.length() >4){
   
String ext files.substring(files.length() - 4);
   if(
ext != ".txt"){
    
files files ".txt";
    
System.out.println("Se agrego la extencion");
   }else{
   
System.out.println("correcto");
   }
   
   
System.out.println("extencion obtenida: " ext);
   }else{
   
System.out.println("No se puede calcular");
   }
  } 

al menos lo que pretenrdo es hacer una funcion que sepa si el archivo tiene la extension txt, sino se la agrega.
  #2 (permalink)  
Antiguo 25/06/2008, 00:22
venkman
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: curioso error del java

Para comparar el contenido de dos Strings no se hace con == o con !=, sino con cadena1.equals(cadena2)

Código:
if (!".txt".equals(ext)) {
  #3 (permalink)  
Antiguo 25/06/2008, 01:40
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Respuesta: curioso error del java

= no te dice si una cadena es igual a otra, te dice si dos cadenas son en realidad el mismo objeto, lo cual en tu caso no es cierto. Usa el metodo equals para comparar dos cadenas.

S!
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestaré lo que me dé la gana.
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 01:05.