elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Error al comparar String con "y" o "Y"
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Error al comparar String con "y" o "Y"  (Leído 2,135 veces)
rgomez9119

Desconectado Desconectado

Mensajes: 17


Ver Perfil
Error al comparar String con "y" o "Y"
« en: 6 Noviembre 2016, 18:43 pm »

Hola,
Tengo esto:

Código:
case 5: // Borrar todas las mercancias existentes
lectura.nextLine(); // Borrando buffer
System.out.println("Seguro que desea borrar todo? (Y/N): ");
String opcionBorrar = lectura.nextLine();

if (opcionBorrar == "y" || opcionBorrar == "Y")
{
mercancias.clear();
System.out.println("....................BORRADO");
}
break;

}

Al escribir y o Y por el teclado, no funciona, es como si nunca entrara en el IF.

Estoy comparando mal el String?. Se hace de otra forma?.
Espero que me ayuden.


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Error al comparar String con "y" o "Y"
« Respuesta #1 en: 6 Noviembre 2016, 18:47 pm »

esto que lenguaje es?


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Konlex

Desconectado Desconectado

Mensajes: 35



Ver Perfil
Re: Error al comparar String con "y" o "Y"
« Respuesta #2 en: 6 Noviembre 2016, 19:13 pm »

esto que lenguaje es?
es java

intenta asi:

Código:
case 5: // Borrar todas las mercancias existentes
reader.nextLine(); // Borrando buffer
System.out.println("Seguro que desea borrar todo? (Y/N): ");
String opcionBorrar = reader.nextLine();

if (opcionBorrar == "y" || opcionBorrar == "Y")
{
mercancias.clear();
System.out.println("....................BORRADO");
}
break;

}
saludos!
En línea

La felicidad no es continua todos los dias de tu vida,sino que se presenta en momentos en que menos te los esperas.No pienses que eres infeliz,solo que no te das cuenta que ella se presenta en breves momentos de tu vida,y no la sabes valorar.
rgomez9119

Desconectado Desconectado

Mensajes: 17


Ver Perfil
Re: Error al comparar String con "y" o "Y"
« Respuesta #3 en: 6 Noviembre 2016, 19:17 pm »

no funciona.

Lo que pasa es que yo tengo esto para poder leer datos y capturarlos.

Código:
import java.util.Scanner;
Scanner lectura = new Scanner(System.in);

con esto hago esto:
Código:
System.out.println("Seguro que desea borrar todo? (Y/N): ");
String opcionBorrar = lectura.nextLine();
funciona perfecto, el problema esta al comparar el String, no se si con == es la forma correcta.

alguna otra idea?.
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Error al comparar String con "y" o "Y"
« Respuesta #4 en: 6 Noviembre 2016, 19:18 pm »

si es Java, el tema debe ir en el subforo de Java, no es programación general!

movido
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
rgomez9119

Desconectado Desconectado

Mensajes: 17


Ver Perfil
Re: Error al comparar String con "y" o "Y"
« Respuesta #5 en: 6 Noviembre 2016, 19:22 pm »

si es Java, el tema debe ir en el subforo de Java, no es programación general!

movido

cierto, gracias bro

nota: he cambiado la forma de hacer la comparacion por esta:
Código:
if (opcionBorrar.equals("y") || opcionBorrar.equals("Y"))
ahora todo funciona bien, al parecer no se puede usar == al comparar un String con "letras".

Gracias a todos por tratar de ayudarme.
En línea

0xFer


Desconectado Desconectado

Mensajes: 400



Ver Perfil
Re: Error al comparar String con "y" o "Y"
« Respuesta #6 en: 6 Noviembre 2016, 22:24 pm »

al parecer no se puede usar == al comparar un String con "letras".

El operador == sólo compara variables de tipo primitivo( char, int , double ....) Cualquier instancia de String es una variable de tipo objeto.
En línea

Código
  1. int getRandomNumber(){
  2.    return 4; //chosen by fair dice roll
  3.              //guaranteed to be random
  4. }
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines