Por si le sirve a alguien, (está sacado del curso chorra de java en plan ccc que nos dieron y que por suerte he ido complementando cada día por cuenta propia en base a todo lo ya conocido, sobre todo dado que es un refrito de C y C++ pero capado oiga, nada de punteros que eso es sólo para hombres, aquí sólo tenemos referencias, también se asemeja un poco a .net), para calcular cuanto le va a costar la semana próxima el litro de gasolina o gasóleo:

Enunciado: Realizar un programa ( Factorial(n) ) que devuelva el factorial de un valor pasado al programa

import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Factorial {
public static void main(String ards[]){
BufferedReader entrada=new BufferedReader(new InputStreamReader(System.in));

int numero;
long auxiliar=1;

try{

System.out.print("Introduzca el numero del que se desea calcular el factorial: ");

numero = Integer.parseInt(entrada.readLine());

while(numero!=1){
auxiliar *= numero;

numero--;
}
System.out.println("\nFactorial del Numero: "+auxiliar);
}catch(Exception e){}
}
}

Ya hablando en serio; está muy bien aunque tiene sus limitaciones y problemas, sobre todo en lo referente a compatibilidad hacia atrás (versiones inferiores), pero por lo demás la JVM es multiplataforma, dispones de varios IDE como eclipse, netbeans y otros para el tema gráfico, puedes programar servlets, applets, beans. Exportar e importar ficheros jar, hilos, es cuasi POO y muchas otras cosillas bastante curiosas, además de ser completamente gratuito y potente. Además existen diferentes versiones de Java en función de la necesidad de un proyecto: J2EE, J2SE, J2ME, Java Card etc etc.

La verdad es que no cuesta demasiado adaptarse a java sobre todo si conoces antes algo de C y C++, está mucho más simplificado y “bonito”.