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

No puedo evaluar un string con if

Estas en el tema de No puedo evaluar un string con if en el foro de Java en Foros del Web. bueno, verán apenas comienzo con java, para evaluar mis conocimientos intento hacer una calculadora de dos mumeros tengo el siguente codigo: Scanner scan = new ...
  #1 (permalink)  
Antiguo 18/09/2012, 17:49
Avatar de dany0425  
Fecha de Ingreso: julio-2012
Ubicación: Colombia
Mensajes: 16
Antigüedad: 11 años, 9 meses
Puntos: 3
Pregunta No puedo evaluar un string con if

bueno, verán apenas comienzo con java, para evaluar mis conocimientos intento hacer una calculadora de dos mumeros tengo el siguente codigo:

Scanner scan = new Scanner (System.in);

String fin;
fin = "";

while(!fin.equals("Fin")){
int numero = scan.nextInt();
int oper = scan.nextInt();
int numero2 = scan.nextInt();
int T;

if (fin != ("Fin")){

switch (oper){
case 1:{
T=(numero+numero2);
System.out.println(T);
break;
}
case 2:{
T=(numero-numero2);
System.out.println(T);
break;
}
case 3:{
T=(numero*numero2);
System.out.println(T);
break;
}
case 4:{
T=(numero/numero2);
System.out.println(T);
break;
}
default: {
System.out.println("Ninguno !!!");
break;
}
}
System.out.println("Si desea finalizar escriba Fin sino escriba no \n\n");


}else System.out.println("Error en el codigo");// big if
fin = scan.next();
}

el codddigo me corre perfecto pero a la otra de colocar en vez de oper = 1,2,3,4...
ps no me deja, logicamente no lo ago con switch sino con if pero pasa el codigo derecho como si no evaluara oper con los if por ejempli pondria

if(oper == "+"){
T=(numero+numero2);
System.out.println(T);


}
pero escribo en la consola + para la variable oper y no funciona, logicamente cambio int por string... etc
  #2 (permalink)  
Antiguo 18/09/2012, 21:45
Avatar de dany0425  
Fecha de Ingreso: julio-2012
Ubicación: Colombia
Mensajes: 16
Antigüedad: 11 años, 9 meses
Puntos: 3
Respuesta: No puedo evaluar un string con if

Bueno pues pensando bien me di cuenta de esto,

String n = "s";//objeto

if(n == "s"){

//s es otro objeto por lo tanto un objeto no es igual al otro

}
pero
if(n.equal("s")){
// n es un objeto que se esta igualando o comparando con otro, asi que ahora si
}


No borrare el tema por si alguien tiene un problema similar
  #3 (permalink)  
Antiguo 18/09/2012, 22:38
 
Fecha de Ingreso: enero-2008
Mensajes: 614
Antigüedad: 16 años, 4 meses
Puntos: 57
Respuesta: No puedo evaluar un string con if

En realidad hay ocasiones en que 2 objetos String, si los comparas te va a dar verdadera la comparacion

Código Java:
Ver original
  1. public class Prueba {
  2.     public static void main(String[] args) {
  3.         String a = "cadena";
  4.         String b = "cadena";
  5.  
  6.         if ( a == b )
  7.             System.out.println("a y b son iguales");
  8.         else
  9.             System.out.println("no son iguales");
  10.     }
  11. }

Cuando estudias para la certificacion de Java te das cuenta de todos los pequeños detalles del lenguaje

Etiquetas: errores, funciones
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 06:46.