Autor Tema: Java diferencia entre equals, equalsIgnoreCase y compareTo comparar CU00657B  (Leído 3712 veces)

eduardoc

  • Principiante
  • **
  • Mensajes: 50
    • Ver Perfil
Buenas, otro ejercicio más. El ejercicio CU00657B del tutorial Aprende a programar en Java como si estuvieras en primero ;)

Muchas gracias, saludos.

Edu.

PD: estuve un buen rato mirando por qué "corno" la comparación directa del caracter obtenido con el substring funcionaba correctamente :( Observando la resolución hecha por umadara encontré el compareTo ;) muchas gracias!

Código: [Seleccionar]
// (CU00657B).
import java.util.Scanner;

public class TestPrograma1{
    public static void main(String [] args){
        String cadenaAMostrar = "La cadena introducida tiene ";
       
        // Solicitud de cadena.
        System.out.println("Empezamos el programa.");
        System.out.println("Por favor introduzca una cadena por teclado:");
       
        // Obtener cadena.
        String entradaTeclado = "";
        Scanner entradaEscaner = new Scanner (System.in);
        entradaTeclado = entradaEscaner.nextLine();
       
        // Evaluar cadena.
        // Longitud de la entrada por teclado.
        if (entradaTeclado.length() < 5){
            cadenaAMostrar = cadenaAMostrar + "menos de 5 caracteres y ";}
            else if(entradaTeclado.length() <= 15){cadenaAMostrar = cadenaAMostrar + "entre 5 y 15 caracteres y ";}
            else {cadenaAMostrar = cadenaAMostrar + "más de 15 caracteres y ";}
       
        // Identificar primer caracter de la entrada por teclado.
        if (entradaTeclado.substring(0,1).compareTo("a") == 0 || entradaTeclado.substring(0,1).compareTo("A") == 0){
            cadenaAMostrar = cadenaAMostrar + "comienza por a";}
            else {cadenaAMostrar = cadenaAMostrar + "no comienza por a";}
           
        // Exhibe el resultado.
        System.out.println(entradaTeclado.substring(0,1) + " --- " + cadenaAMostrar);
    }
}
« Última modificación: 10 de Julio 2016, 17:20 por Alex Rodríguez »

DRANXZ88

  • Avanzado
  • ****
  • Mensajes: 356
    • Ver Perfil
Re:Ejercicio: (CU00657B) - Pedir datos en Java por consola (teclado).
« Respuesta #1 en: 02 de Julio 2016, 17:35 »
Tu código funciona bien. En forma de comentario nomas se puede usar equalsIgnoreCase("a") también toma igual si es mayúscula y minúscula.

eduardoc

  • Principiante
  • **
  • Mensajes: 50
    • Ver Perfil
Re:Ejercicio: (CU00657B) - Pedir datos en Java por consola (teclado).
« Respuesta #2 en: 02 de Julio 2016, 23:27 »
En forma de comentario nomas se puede usar equalsIgnoreCase("a") también toma igual si es mayúscula y minúscula.

Muchas gracias por el dato, será cuestión de leer y practicar para ir conociendo todos los días un poco más.

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Hola, este ejercicio se puede resolver tanto como equals como con equalsIgnoreCase como con compareTo. En general para la resolución de ejercicios recomendamos no introducir contenidos no explicados en el curso (dentro del guión del curso hasta el momento), pero en algunos casos puntuales puede ser necesario. Equals se explica a lo largo del curso de Java básico, mientras que compareTo se explica en el curso de Java avanzado https://www.aprenderaprogramar.com/index.php?option=com_content&view=category&id=58&Itemid=180

Saludos

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".