Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: eduardoc en 02 de Julio 2016, 16:15

Título: Java diferencia entre equals, equalsIgnoreCase y compareTo comparar CU00657B
Publicado por: eduardoc en 02 de Julio 2016, 16:15
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);
    }
}
Título: Re:Ejercicio: (CU00657B) - Pedir datos en Java por consola (teclado).
Publicado por: DRANXZ88 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.
Título: Re:Ejercicio: (CU00657B) - Pedir datos en Java por consola (teclado).
Publicado por: eduardoc 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.
Título: Re:Java diferencia entre equals, equalsIgnoreCase y compareTo comparar CU00657B
Publicado por: Alex Rodríguez en 10 de Julio 2016, 17:23
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