Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: manu37 en 02 de Noviembre 2017, 13:31

Título: Java qué significado tiene una clase sin atributos y constructor vacío CU00649B
Publicado por: manu37 en 02 de Noviembre 2017, 13:31
Buenas tardes compañeros,

Paso el código del ejercicio del ejercicio del curso aprendiendo a programar Java desde cero / Método Substring (CU00649B).

Crea una clase (ponle el nombre que quieras) que carezca de atributos y cuyo constructor esté vacío. En dicha clase debe existir un método tipo función que reciba 3 cadenas de texto y devuelva la cadena de texto combinación de: las dos primeras letras de la primera cadena, seguidas por un espacio en blanco, seguidas de las cuatro primeras letras de la segunda cadena, seguidas de un guión medio y seguido de
las 6 primeras letras de la tercera cadena.

Código: [Seleccionar]
public class CadenaCaracteres
{
    // Sin ninguna instance variables -
   

    /**
     * Constructor for objects of class CadenaCaracteres
     */
    public CadenaCaracteres()
    {
        // Vacio
       
    }

   
    String Combinacion (String valor_frase1, String valor_frase2, String valor_frase3)
       
       
    {
        String frase1  = "Hola";
        String frase2 = "Mundo";
        String frase3 = "Bellísimo";
        String combinacion = valor_frase1.substring(0,2) + " " + valor_frase2.substring(0,4) + "-" + valor_frase3.substring(0,6) + " _";
        return combinacion;
    }
}
Título: Re:Aprendiendo a programar desde cero/Método Substring (CU00649B)
Publicado por: LuisM en 07 de Noviembre 2017, 22:23
Hola manu37 !! Tengo dos detalles que comentarte:
Citar
    String Combinacion (String valor_frase1, String valor_frase2, String valor_frase3)


    {
        String frase1  = "Hola";
        String frase2 = "Mundo";
        String frase3 = "Bellísimo";
        String combinacion = valor_frase1.substring(0,2) + " " + valor_frase2.substring(0,4) + "-" + valor_frase3.substring(0,6) + " _";
        return combinacion;
    }

1) Lo escrito en color naranja no afecta pero es código que está de más.
2) Lo que está en color rojo no fue solicitado en el ejercicio.

Un saludo,
Luis
Título: Re:Aprendiendo a programar desde cero/Método Substring (CU00649B)
Publicado por: manu37 en 22 de Noviembre 2017, 18:59
Gracias. Lo hice en Eclipse y una vez terminado hice un corta y pega.

Pongo el código correcto:

Código: [Seleccionar]
public class ComparadorString{
    // instance variables
    private String cadena1;
    private String cadena2;
    private String cadena3;

    //  Constructor vacío
   
    public ComparadorString()
    {
        // initialise instance variables
       
    }

    String combinacion(String valor_cadena1, String valor_cadena2, String valor_cadena3){
        String combinacion = valor_cadena1.substring(0,2) + " " + valor_cadena2.substring(0,4)+
        " _ " + valor_cadena3.substring(0,6);
       
        return combinacion;
       
    }
   
}
Título: Re:Aprendiendo a programar desde cero/Método Substring (CU00649B)
Publicado por: LuisM en 22 de Noviembre 2017, 22:26
Hola manu37 !!
Estaba bien antes si solo sacabas lo marcado con rojo:
String combinacion = valor_frase1.substring(0,2) + " " + valor_frase2.substring(0,4) + "-" + valor_frase3.substring(0,6)
El guión medio es "-" y no " _ " (así estaba solicitado), y el string combinacion debe tener un largo de 14 caracteres y no 16.
 
Un detalle que podés agregar es controlar el largo de las cadenas que se ingresan para evitar el error de intentar obtener caracteres donde no hay. Ejemplo: si valor_frase2 fuese igual a "abc" obtendríamos un error en la ejecución si hacemos: valor_frase2.substring(0,4).

En general el problema fue bien resuelto, salvo esos detalles que por ahora son anecdóticos. Igualmente creo que en programación debemos tener en cuenta la frase: "el diablo está en los detalles". Uno muy pequeño hace que un programa no funcione correctamente.
Un saludo,
Luis