Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: jonathan en 14 de Junio 2014, 17:28

Título: [java] Pedir datos por consola Scanner [ayuda]
Publicado por: jonathan en 14 de Junio 2014, 17:28
hola, estoy siguiendo el tuto de java, estoy en este tuto=
http://aprenderaprogramar.com/index.php?option=com_content&view=article&id=623:pedir-datos-en-java-por-consola-teclado-escape-backslash-systemoutprint-salto-de-linea-n-cu00657b&catid=68:curso-aprender-programacion-java-desde-cero&Itemid=188

y no puedo realizar bien el algorimo, ayuda porfavor=
Citar
EJERCICIO

Crea una clase con un método main que pida una entrada de teclado y usando condicionales, el método length de la clase String y el método substring de la clase String, muestre un mensaje indicando:

a) Si la cadena introducida tiene menos de 5 caracteres, entre 5 y 15 caracteres o más de 15 caracteres.

b) Si la cadena introducida comienza por la letra a.

Ejemplo: se pide la entrada y el usuario introduce “vereda”. Por pantalla se debe mostrar: “La cadena introducida tiene entre 5 y 15 caracteres y no comienza por a”.

algoritmo
Código: [Seleccionar]
import java.util.Scanner;
public class StringSubstring{
    public static void main (String [] args){
        System.out.println("Empezamos el Programa");
        System.out.println("Introduzca una cadena por el teclado");
        String entradateclado = "";
        Scanner entradaescaner = new Scanner (System.in); //creacion de un objeto Scanner
        entradateclado = entradaescaner.nextLine();//invocamos un metodo sobre un objeto Scanner
        String indicador2 = "no";
       
        if(entradateclado.substring(0,1) == "a"){ //si la primera letra es a
            indicador2 = "si";
        }
       
        if(entradateclado.length() < 5){
            System.out.println("La cadena introducida tiene menos de 5 caracteres y "+ indicador2 +" empieza por la letra a");
        }
        else
        if(entradateclado.length() >= 5 && entradateclado.length() <= 15){
            System.out.println("La cadena introducida es mayor o igual a 5 y menor o igual a 15 y "+ indicador2 +" empieza por la letra a");
        }
        else
         if(entradateclado.length() < 15 ){
            System.out.println("La cadena introducida es mayor a 15 y "+ indicador2 +" empieza por la letra a");
        }
    }
}

todo bien , compila, devuelve resultados pero no puedo hacer que indicador2 cambie de NO a SI.... ayuda porfavorr!!! gracias!!!
Título: Re:[java] Pedir datos por consola Scanner [ayuda]
Publicado por: César Krall en 14 de Junio 2014, 19:24
Hola, aquí tienes la respuesta: debes usar equals como se indica en

https://www.aprenderaprogramar.com/foros/index.php?topic=936.msg5387

Saludos