Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Erik_Escriche

Páginas: 1 2 3 [4]
61
Buenos días.
Esta es mi propuesta para el ejercicio de la entrega CU00657B de "Aprender programación Java desde cero".

Código: [Seleccionar]
/* Este clase te dice la longitud de la cadena y si esta cadena comienza por la letra a. */
import java.util.Scanner;
public class DescribeCadena {
    public static void main (String [] args) {
        System.out.println ("Introduce un texto.");
        String entradaTeclado = "";
        Scanner entradaEscaner = new Scanner (System.in);
        entradaTeclado = entradaEscaner.nextLine (); // Crea un String que se corresponde con el texto introducido.
        int numeroCaracteres = entradaTeclado.length();
        if (numeroCaracteres<5) {
            System.out.print ("La cadena introducida tiene menos de 5 caracteres");
        } else if (numeroCaracteres>=5&&numeroCaracteres<=15) {
            System.out.print ("La cadena introducida tiene entre 5 y 15 caracteres");
        } else {
            System.out.print ("La cadena introducida tiene más de 15 caracteres");
        }
        String primeraLetra = entradaTeclado.substring(0,1);
        if (primeraLetra.equals ("a") || primeraLetra.equals ("A") || primeraLetra.equals ("á") || primeraLetra.equals ("Á") ) {
            System.out.print (" y comienza por a.\n");
        } else {
            System.out.print (" y no comienza por a.\n");
        }
    }
}

He visto que no puedo usar un código tipo primeraLetra == "a". ¿El operador == solo puede usarse con tipos primitivos?

62
Ah, de acuerdo. ¡Muchas gracias!

Sí, sé que estaba resuelto en la entrega, pero como primero había escrito mi código sin mirar el propuesto y resultó ser bastante diferente, quería verificar preguntando en el foro si mi opción era correcta o si era preferible no crear el método de esta manera por algún convenio de programación.

63
De acuerdo. Muchas gracias por tu respuesta, DRANXZ88.
¡Un saludo!

64
Hola ESOJ.

Muchas gracias por contestar a mi mensaje. No entiendo el código que me has propuesto. No sé si ha habido un malentendido con la entrega del curso y lo que me has escrito es de alguna más avanzada o si simplemente no estoy comprendiendo, jeje.

El ejercicio al que he respondido es este:

Método length de la clase String del API de Java. Ejemplo de uso de métodos para evitar errores. (CU00650B)

"Valiéndonos de este método, intenta escribir tu propio código para hacer lo siguiente:

(...) b) Escribir un nuevo método de la clase, al que podemos denominar combinadoSiempre  que en caso de que se pasen cadenas con menos de tres caracteres, las combine de todas formas en base a los caracteres disponibles, sea el número que sea".


Si me has respondido en base a esto, disculpa. Será que no me entero mucho todavía.

65
Buenos días.

Dejo aquí el código que he escrito para el método combinadoSiempre y la respuesta a las preguntas. Muchas gracias de antemano por las correcciones y comentarios.

Código: [Seleccionar]
//Método que combina las cadenas con cualesquiera caracteres disponibles.
    public String combinadoSiempre (String valor_texto1, String valor_texto2) {
        String combinacionSiempre = "";
        if (valor_texto1.length()>=3&&valor_texto2.length()>=3) {
            combinacionSiempre = valor_texto1.substring (0,3) + " " + valor_texto2.substring(0,3);
        } else if (valor_texto1.length()<3&&valor_texto2.length()>=3) {
            combinacionSiempre = valor_texto1.substring (0) + " " + valor_texto2.substring (0,3);
        } else if (valor_texto1.length()>=3&&valor_texto2.length()<3) {
            combinacionSiempre = valor_texto1.substring (0,3) + " " + valor_texto2.substring(0);
        } else {
            combinacionSiempre = valor_texto1.substring (0) + " " + valor_texto2.substring (0);
        }
        System.out.println ("El resultado de la combinación es " + combinacionSiempre + ".");
        return combinacionSiempre;
    }

Fíjate en el resultado que ofrece el método CombinadoSiempre cuando se le pasan como parámetros dos cadenas vacías. ¿Te parece lógico el resultado? Sí, me parece lógico, ya que hemos pedido en el código que aparezca un espacio en blanco entre las dos cadenas.

En la clase tenemos definidos dos atributos o campos. ¿Tienen utilidad conocida a la vista del código de la clase? ¿Se usan en los métodos que tenemos definidos? No, los atributos no tienen utilidad en el código que hemos escrito. No se usan en los métodos que tenemos definidos. Se pueden omitir y el programa funciona igual.

Páginas: 1 2 3 [4]

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".