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

Ultimamente he visto post sobre gente que quiere aprender java, así que decidi hacer una serie de tutoriales para los principiantes.Este es el primero.

¿Qué necesito?

  • Descargar el jdk Aqui
  • Descomprimir el archivo de preferencia en C:\ (Windows) o en el /home/ (Linux)

Crear la variable de ambiente

Agregarla al path

Probar instalación

java -version

  1. ¿Necesito un programa para hacer programas (IDE)? no necesariamente.Basta que tengas un editor sencillo como notepad o notepad++, al menos por el momento
  2. ¿Es necesario la lógica y las matemáticas?si, son necesarias
  3. ¿Es necesario saber inglés? en algunos casos si, la documentación y la mayoría de los libros están en ese idioma
  4. ¿Cómo consigo información sobre java?pidele ayuda a San Google y el te ayudará

Mi programa no funciona

A veces la solución es tan simple que no parece real.

Ejemplo
Inicio.java

public class Inicio{
   public static void main(String[] args)throws Exception{
     if(args.length!=0){
         for(String e: args){
           System.out.println("Hola: "+e+"  bienvenido");
         }
         }else{
           System.out.println("nada que evaluar");
         }
   }  

}

Para compilar:
javac -g Inicio.java
Para ejecutar:
java Inicio.java
Al parecer no hay ningún problema, sin embargo no logramos "ver" el resultado.


En este caso el programa necesita valores para poder visualizar el mensaje.

  • Conoce el lenguaje
  • Pregunta
  • Busca ejemplos, estudialos, trata de rehacerlos, crear tus propios programas
  • Comparte

Las imágenes de Homero Simpson son propiedad 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 Sr. Negativo

Aprendiendo Java ... estructuras básicas

Espero hacer ejercicios un poco más elaborados. Creo me faltó detallar más el lenguaje Java.

Secuenciales

int a=9, b=3;
int suma=a+b;
System.out.printf("Suma: %d",suma);

Iterativas

int[] numeros={3,4,5,6,8,54,66};
int suma=0;
//con  for "simple"
for(int i=0;i<numeros.length;i++){
 suma+=numeros[i];
}
System.out.printf("Suma: %d",suma);
//con for "foreach"
for(int el: numeros){
  suma+=el;
}
System.out.printf("Suma: %d",suma);

//ahora un ejemplo con while
static final int MAX=100;
int cont=0;
int suma=0;
while(cont<MAX){
   suma+=cont;
   cont++;
}
System.out.printf("Suma: %d",suma);

Selectivas

/*usando if*/
boolean expresion=(34<=40) && (50==50);
if(!expresion){
   System.out.println("no se cumplio");
}else{
   system.out.println("se cumplio satisd¿factoriamente");
}
/*usando switch*/
int opc=3;
switch(edad){
  case 1: nada();break;
  case 2: nada(); break;
  case 3: algo(); break;
}
Imagen de Jose Manuel

Que nice!, deberías hacer una

Que nice!, deberías hacer una especie de temario para ver los temas que se mostraran en Aprendiendo Java en "serio". Seguro que hasta te ayuda con el orden de las publicaciones :)

Las imágenes de Homero le dan un toque relax :P

Saludos.

Imagen de Sr. Negativo

Temario Java

Eso me faltó (D´OH) !!!

Tienes razón debería incluir un temario. Buen consejo ... empiezo a hacerlo ...

editado.

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

Imagen de neko069

Lo último que ví que faltó,

Lo último que ví que faltó, fué cómo dar de alta las variables de entorno en el pinguino y que, al pie de cada tutorial, pongas las ligas a los siguientes/anteriores, fuera de ello me parece una excelente propuesta para dar a conocer el lenguaje a los novatos (jo, habla el super experimentado).
Felicidades Siñor, me pongo de pie, por tu iniciativa.

Imagen de jabon

Recomendacion

saludos a todos , soy novato en el java , vengo de la plataforma .NET de microsoft
y que opinan del curso :
Curso en línea de Java Web que se esta promicionando desde esta misma web ?
casi hago mi pago para inscribirme...
Es bueno este curso ?
alguien me ayuda ?

Imagen de Lindux

Códido para calcular el R.F.C.

Sr Negativo. Buenas tardes.

Necesito su ayuda para continuar con este código, puede decirme como hago para calcular el RFC?

Aqui lo que he hecho pero no sé como hacer para el cálculo. Ayudaaa!!

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;

public class RFC extends JFrame implements ActionListener{

//clase instancia metodo constructor
JLabel titulotxt1 = new JLabel();
JLabel titulotxt2 = new JLabel();
JLabel nombretxt = new JLabel();
JLabel apepattxt = new JLabel();
JLabel apemattxt = new JLabel();
JLabel fechanatxt = new JLabel();
JLabel sexo1 = new JLabel();
JLabel fechanad1 = new JLabel();
JLabel fechanam1 = new JLabel();
JLabel fechanaa1 = new JLabel();

JTextField nombre1 = new JTextField();
JTextField apepat1 = new JTextField();
JTextField apemat1 = new JTextField();
JTextField sexo2 = new JTextField();

JButton botonH = new JButton();
JButton botonM = new JButton();
JButton calcular = new JButton();

JTextField fechanad = new JTextField();
JTextField fechanam = new JTextField();
JTextField fechanaa = new JTextField();
JTextField combo1 = new JTextField();
JTextField combo2 = new JTextField();

JRadioButton boton01 = new JRadioButton();
JRadioButton boton02 = new JRadioButton();

JLabel rfc01 = new JLabel();
JTextField operCal = new JTextField();

public void misbotones(){

//instancia del boton
//metodo donde indica la posicion d la pantalla x, y y tamaño del boton largo y ancho
titulotxt1.setBounds(230,20,120,20);
titulotxt1.setText("R. F. C.");
add(titulotxt1);
//x , y, largo y ancho del texto
//modifico alto con "Y"
titulotxt2.setBounds(200,30,120,50);
titulotxt2.setText("INGRESE SUS DATOS");
add(titulotxt2);

apepattxt.setBounds(50,80,120,20);
apepattxt.setText("Apellido Paterno");
add(apepattxt);

apemattxt.setBounds(50,120,120,20);
apemattxt.setText("Apelllido Materno");
add(apemattxt);

nombretxt.setBounds(50,160,120,20);
nombretxt.setText("Nombre Completo");
add(nombretxt);

fechanatxt.setBounds(50,220,120,20);
fechanatxt.setText("Fecha Nacimiento");
add(fechanatxt);

sexo1.setBounds(80,310,120,20);
sexo1.setText("Sexo");
add(sexo1);

apepat1.setBounds(170, 80, 230, 30);
apepat1.setText(" Apellido Paterno");
add(apepat1);

apemat1.setBounds(170, 120, 230, 30);
apemat1.setText("Apellido Materno");
add(apemat1);

nombre1.setBounds(170, 160, 230, 30);
nombre1.setText("Nombre Completo");
add(nombre1);

fechanad1.setBounds(190,200,40,30);
fechanad1.setText("DD ");
add(fechanad1);

fechanam1.setBounds(250,200,40,30);
fechanam1.setText("MM ");
add(fechanam1);

fechanaa1.setBounds(310,200,40,30);
fechanaa1.setText("AAAA");
add(fechanaa1);

fechanad.setBounds(180,240,50,20);

fechanad.setText(" ");
add(fechanad);

fechanam.setBounds(240,240,50,20);
fechanam.setText(" ");
add(fechanam);

fechanaa.setBounds(300,240,50,20);

fechanaa.setText(" ");
add(fechanaa);

boton01.setBounds(50, 350, 40, 30);
boton01.setText("H");
add(boton01);

boton02.setBounds(90, 350, 40, 30);
boton02.setText("M");
add(boton02);

rfc01.setBounds(120,410,40,30);
rfc01.setText("R.F.C. ");
add(rfc01);

operCal.setBounds(170,410,230,30);
operCal.setText(" ");
add(operCal);

calcular.setBounds(220,360,100,30);
calcular.setText("Calcular");
calcular.addActionListener(this);
add(calcular);
}

//public void miEntrada(){

//}

public void mipantalla(){
//que se vea la pantalla
setVisible(true);

//el tamaño de la pantalla
setSize(580,600);
//QUE YO PUEDA PONER MIS BOTONES DONDE YO QUIERA
setLayout(null);

}

@Override
public void actionPerformed(ActionEvent e) {
//action performance activa la funcion calcular, pero tambien cualquier objeto
if(e.getSource() == calcular){
//JOptionPane.showMessageDialog(null, "Hola");

String apepaterno = apepat1.getText();
String apepat1 = apepaterno.substring(0, 2);

String apematerno = apemat1.getText();
String apemat1 = apematerno.substring(0, 1);

String nombre = nombre1.getText();
String nombre1 = nombre.substring(0, 1);

String rfcal = apepat1 + apemat1 + nombre1;
JOptionPane.showMessageDialog(null, rfcal);

}
}
}

Imagen de Jose Manuel

@Lindux en este tema solo

@Lindux en este tema solo postea cosas relacionas. Si tienes dudas o problemas con algún programa diferente es mejor crear un nuevo tema en el foro.
Saludos.

Imagen de Sr. Negativo

@Lindux ...aprende Java desde cero

Estudia el lenguaje, por el momento olvidate de Swing.

Aprende lo básico, las estructuras de control,operadores, ... las estructuras de datos, etc. Puedes comprar un libro o investigar en foros, para resolver tu problema necesitas estudiar.

Imagen de Sr. Negativo

Variable de entorno en Linux

Descargas y descomprimes el archivo en /opt y en la terminal de comandos Linux escribes lo siguiente

JAVA_HOME=”/opt/jdk1.6.0_03″    
CLASSPATH=”.”
PATH=”$PATH:/opt/jdk1.6.0_03/bin”
export JAVA_HOME
export CLASSPATH
export PATH

Debe funcionar, comprueba la instalación con:

java -version
Imagen de reynaldo2x

tema siguiente

lo que no veo es un enlace a tema siguiente... eso me fue dificil buscar xD.

Leyendo tus tutos muy weno, se algo de programacion en C#, VB, Java pero aun no paso de lo basico a algo como medio-avanzado hasta avanzado quiero llegar para tener trabajo de ello ;D... por tiempo faltante no leo mucho pero me dedicare mas... gracias sirve toda la ayuda posible.