Aprendiendo Java en "serio" ... [002]

Temario muy básico de Java

  1. Compilar y ejecutar programas Java: java, javac,etc.
  2. Arreglos: vectores y matrices
  3. Introducir datos en Java: Scanner, BufferedReader, JOptionPane, etc.
  4. Uso de Collections: List, HashMap, etc.
  5. Java Swing básico
  6. Proyecto sencillo no.1
  7. IDEs: Eclipse y NetBeans
  8. Java y las base de datos
  9. Proyecto sencillo no.2
  10. Java y XML
  11. Frameworks

Presentación

Aqui

Hacer estos tutoriales también me ayuda mucho para repasar el lenguaje, no voy a explicar mucho para no aburrirlos.
Antes deberías tomar en cuenta esto del problema al código

¿Qué necesito?

  1. Crea una carpeta, ahi pondrás tus códigos
  2. No es necesario usar un programa para hacer programas (NetBeans o Eclipse) por el momento
  3. Estudiar y preguntar

Compilar y ejecutar programas

Para estos ejemplos es necesario usar la terminal de Linux o la de Windows. Es necesario estudiar el lenguaje: síntaxis de las estructuras, tipos de datos, etc.

Compilar un programa *.java

javac -g ElNombreDeTuPrograma.java

Ejecutar programa

java ElNombreDeTuPrograma

Ver código del programa

type ElNombreDeTuPrograma.java

Estructuras de control

  1. Secuenciales: de arriba hacia abajo
  2. Selectivas: if(condición){} else if(condición){} else{} ... switch(condición){ case 0: break; ...}
  3. Iterativas: for(condiciones){} ... while(condición){} ... do{}while(condición)

Esto ya lo había puesto, pero es importante.

Ej. no 0: saludar todos los nombres que introduzca el usuario

Prog01.java

package pruebas;
/*
Por regla general las clases deben iniciar en mayúsculas
*/

public class Prog01{
         /*En este programa debes introducir datos a la hora de ejecutar el programa*/
     public static void main(String ... args)throws Exception{
          int i=0;
           if(args.length!=0){ // si el programa tiene argumentos se ejecutara está sentencia
           for(String e:args){
             System.out.println("Hola  "+e); //todos los datos son tipo String
                 i++;
           }
           }else{/*si el programa no tiene argumentos se ejecutará está sentencia*/
             System.out.println("no hay argumentos");
           }
           System.out.println("no. de registros: "+i);
         }
}
<b>Compilar:</b>    <b>javac</b>  -g Prog01.java

<b>Ejecutar:</b>    <b>java</b>   Prog01   Juan  Miguel Cesar  Jose Anita

Ej. no 1: sumar los valores de un vector tipo String

Prog02.java

package pruebas;
/*
los valores del vector args los llenará el usuario
*/

public class Prog02{
         /*En este programa debes introducir datos a la hora de ejecutar el programa*/
     public static void main(String ... args)throws Exception{
           int suma=0,i=0;
           if(args.length!=0){
           // si el programa tiene argumentos se ejecutara está sentencia
           for(String e: args){
             suma+=Integer.parseInt(e); //cvertir los datos tipo String a tipo entero
                 i++;
           }
           }else{
           /*si el programa no tiene argumentos se ejecutará está sentencia*/
             System.out.println("no hay argumentos");
           }
           System.out.printf("Suma total: %d ",suma);//se puede usar System.out.println("Suma total:  "+suma);
           System.out.println(" no. de registros: "+i);
         }
}
<b>Compilar:</b>    <b>javac</b>  -g Prog02.java

<b>Ejecutar:</b>    <b>java</b>   Prog02   12 34 33 21 65

Ej. no 2: convertir grados celsius a fahrenheit

Prog02.java

package pruebas;
/*
los valores del vector args los llenará el usuario
*/

public class Prog03{
         /*En este programa debes introducir datos a la hora de ejecutar el programa*/
     public static void main(String ... args)throws Exception{
           int i=0;double num=0.0;
   if(args.length!=0){
      for(String e: args){
       num=Double.parseDouble(e);
           System.out.println("Grados celsius leido: "+num);
           System.out.println("Valor en Fahrenheit obtenido: "+fahrenheit(num));
       }
   }else{
       System.out.println("no hay nada a evaluar");
   }
   System.out.println(" no. de registros: "+i);
 }
 
 static double fahrenheit(double n){
   double res=(1.8*n)+32;
   return res;
         }
}
<b>Compilar:</b>    <b>javac</b>  -g Prog03.java

<b>Ejecutar:</b>    <b>java</b>   Prog03   12 34 33 21 65

Ej. no 3: obtener factorial de un número

Prog02.java

package pruebas;
/*
los valores del vector args los llenará el usuario
*/

public class Prog04{
         /*En este programa debes introducir datos a la hora de ejecutar el programa*/
     public static void main(String ... args)throws Exception{
           int i=0,num=0;
   if(args.length!=0){
      for(String e: args){
       num=Integer.parseInt(e);
           System.out.println("Numero: "+num);
           System.out.println("Factorial obtenido: "+factorial(num));
           i++;
       }
   }else{
       System.out.println("no hay nada a evaluar");
   }
   System.out.println(" no. de registros: "+i);
 }
 
 static int factorial(int n){
      if(n==0){
             return 1;
          }else{
             return n*factorial(n-1);
          }
         }
}
<b>Compilar:</b>    <b>javac</b>  -g Prog04.java

<b>Ejecutar:</b>    <b>java</b>   Prog04   1 2 3 4 5

nota: debe ser tal como se ve escrito, si funcionan los programas

Un consejo

No hay fórmulas mágicas, si quieres aprender te va costar mucho trabajo (yo sigo estudiando ...). Si no te gusta estudiar y quieres algo mucho más sencillo y sin mucho esfuerzo esto tal vez no te sirva.
Las imágenes de Homero Simpson son propiead de Matt Groening.

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de pavul

gracias

hacen falta estos tipos de tutoriales, cuando uno va empesando, gracias por dedicarle tiempo a los que somos principiantes.

Imagen de Sr. Negativo

Más ejemplos

Voy tratar de hacer más ejemplos, ya sea con Java, Ceylon, Scala o Groovy (tal vez incluya Python).

Imagen de reynaldo2x

buena

buenas practicas...Python me gusta la idea. ¿Se usa mas Groovy o Python? de todo seria bueno aprender los dos supongo