Esta referencia de sintaxis está diseñada para ayudarte en la transición de C a Java durante la primera parte de la cátedra. En esta etapa, usaremos Java de una forma “imperativa”, centrándonos en la lógica y algoritmos antes de sumergirnos en la Programación Orientada a Objetos (POO).
1. Estructura Básica de un Programa¶
En Java, a diferencia de C, todo debe estar dentro de una clase. Pensá en la clase como un contenedor obligatorio para tu código.
public class MiPrograma { // El nombre del archivo debe ser MiPrograma.java
// Este es el punto de entrada, equivalente al main() de C
public static void main(String[] args) {
// Tu código va acá
System.out.println("Hola desde Java!");
}
}Para más detalles sobre por qué usamos clases como contenedores, consultá
2. Tipos de Datos Primitivos¶
Java tiene tipos de datos muy similares a C, pero con una diferencia fundamental: sus tamaños están garantizados por la Máquina Virtual de Java (JVM), independientemente de la plataforma.
| Tipo en Java | Equivalente en C | Tamaño | Descripción |
|---|---|---|---|
int | int | 32 bits | Entero estándar. |
long | long long | 64 bits | Entero de rango extendido. |
double | double | 64 bits | Punto flotante de doble precisión (preferido). |
float | float | 32 bits | Punto flotante de precisión simple. |
char | char | 16 bits | Carácter Unicode (no solo ASCII). |
boolean | int (0 o 1) | - | Valores true o false. |
Podés profundizar en estos tipos en
3. Estructuras de Control (Lazos y Condicionales)¶
La buena noticia es que los lazos y condicionales son prácticamente idénticos a los de C.
Condicionales¶
if (edad >= 18) {
System.out.println("Es mayor de edad");
} else if (edad > 0) {
System.out.println("Es menor de edad");
} else {
System.out.println("Edad no válida");
}Lazos (Loops)¶
Java soporta los tres lazos clásicos:
for (int i = 0; i < n; i++) { ... }while (condicion) { ... }do { ... } while (condicion);
4. Métodos (Funciones)¶
Lo que en C llamás “funciones”, en Java lo llamamos métodos. Durante esta primera parte, todos nuestros métodos llevarán la palabra clave static, lo que permite invocarlos sin necesidad de crear objetos.
Declaración de un Método¶
// Equivalente a: int sumar(int a, int b) en C
public static int sumar(int a, int b) {
return a + b;
}Llamadas a funciones (Invocación)¶
int resultado = sumar(5, 3);Para entender cómo se gestiona la memoria durante las llamadas a métodos, revisá
5. Arreglos (Arrays)¶
A diferencia de C, los arreglos en Java son objetos. Esto significa que:
Conocen su propio tamaño a través del atributo
.length.Se inicializan automáticamente con valores por defecto (ej:
0paraint).Son más seguros: la JVM verifica que no te salgas de los límites.
// Declaración y creación de un arreglo de 10 enteros
int[] numeros = new int[10];
// Acceso y asignación
numeros[0] = 42;
int largo = numeros.length; // En C tendrías que pasar el tamaño por separadoPara una comparativa detallada entre los arreglos de Java y C, consultá
6. Entrada y Salida Básica¶
Salida por Consola¶
Java utiliza System.out. El método más parecido al printf de C es, justamente, printf.
System.out.println("Imprime y salta de línea");
System.out.print("Imprime sin saltar");
System.out.printf("Formateado: %s tiene %d años\n", nombre, edad);Entrada de Datos¶
Para leer datos del usuario, usamos la clase Scanner.
import java.util.Scanner;
// ... dentro del main ...
Scanner teclado = new Scanner(System.in);
System.out.print("Ingresá un número: ");
int numero = teclado.nextInt();Encontrá más ejemplos en
7. Reglas de Estilo Fundamentales¶
Para que tu código sea legible y profesional, debés seguir las convenciones de la cátedra:
Nomenclatura:
Clases en
CamelloCase(ej:CalculadoraEstadistica).Métodos y variables en
dromedarioCase(ej:calcularPromedio).Constantes en
SNAKE_CASE(ej:VALOR_MAXIMO).
Nombres descriptivos: Evitá variables de una sola letra (salvo en lazos simples).
Consultá el ../reglas/indice para el listado completo de reglas, como la 0x0001 - Los nombres de las clases van en CamelloCase [Estándar Java] o la 0x0003 - Variables, parámetros y variables locales van en dromedarioCase [Convención del Curso].