Semestre 02, 2026
"".String.
"Hola, mundo!"
"10 de octubre de 2012"
""
System.out.print("Hola");
System.out.println(" Mundo!");
print() imprime sin avanzar de línea.
System.out.print("Hola");
System.out.println(" Mundo!");
println() imprime y luego hace un salto de línea.
El operador + se usa para concatenar cadenas.
System.out.println("24 and 45 concatenated: " + 24 + 45);
// 24 and 45 concatenated: 2445
System.out.println("24 and 45 added: " + (24 + 45));
// 24 and 45 added: 69
Java tiene secuencias de escape para representar caracteres especiales dentro de cadenas.
| Secuencia | Significado |
|---|---|
\b | backspace |
\t | tabulación |
\n | nueva línea |
\r | retorno de carro |
\" | comilla doble |
\' | comilla simple |
\\ | barra invertida |
System.out.println("Hola\nMundo");
Una variable es un nombre para una ubicación en memoria que almacena datos.
int total;
double precio;
char letra;
total = 10;
int numero = 6;
Se pueden declarar múltiples variables del mismo tipo:
int x, y, z;
final.
final int MAX_USERS = 100;
| Categoría | Tipos incluidos |
|---|---|
| Enteros | byte, short, int, long |
| Punto flotante | float, double |
| Caracteres | char |
| Booleanos | boolean |
| Tipo | Tamaño | Rango |
|---|---|---|
byte | 8 bits | -128 a 127 |
short | 16 bits | -32,768 a 32,767 |
int | 32 bits | -2,147,483,648 a 2,147,483,647 |
long | 64 bits | -9×10¹⁸ a 9×10¹⁸ (aprox.) |
| Tipo | Tamaño | Precisión |
|---|---|---|
float | 32 bits | ~7 dígitos decimales |
double | 64 bits | ~15 dígitos decimales |
El tipo char representa un solo carácter Unicode (16 bits). Puede almacenar cualquier símbolo Unicode.
char letra = 'A';
char simbolo = '$';
char unicode = '\u0041'; // A
El tipo boolean solo puede tener dos valores: true y false.
boolean activo = true;
boolean terminado = false;
double a un int sin casting explícito.| Operador | Descripción |
|---|---|
+ | Suma |
- | Resta |
* | Multiplicación |
/ | División |
% | Residuo (módulo) |
int result = 14 + 8 / 2; // 18
int result2 = 3 * ((18 - 4) / 2); // 21
Los operadores ++ y -- aumentan o disminuyen el valor de una variable en una unidad de forma más concisa.
count++; // Postfijo: después de usar el valor actual
++count; // Prefijo: antes de usar el valor actual
// Equivalente a:
count = count + 1;
int a = 5;
int b = a++; // b = 5, luego a = 6
int c = ++a; // a = 7, luego c = 7
Comparan dos valores y devuelven un resultado booleano (true o false).
| Operador | Significado | Ejemplo |
|---|---|---|
== | Igual a | a == b |
!= | Distinto de | a != b |
> | Mayor que | a > b |
< | Menor que | a < b |
>= | Mayor o igual que | a >= b |
<= | Menor o igual que | a <= b |
int x = 10, y = 20;
boolean resultado = x < y; // true
Permiten combinar expresiones booleanas.
| Operador | Nombre | Descripción |
|---|---|---|
&& | AND | Verdadero si ambos operandos son true |
|| | OR | Verdadero si al menos un operando es true |
! | NOT | Invierte el valor lógico |
boolean a = true, b = false;
System.out.println(a && b); // false
System.out.println(a || b); // true
System.out.println(!a); // false
Abrevia operaciones aritméticas combinadas con asignación.
| Operador | Ejemplo | Equivalente |
|---|---|---|
+= | x += y; | x = x + y; |
-= | x -= y; | x = x - y; |
*= | x *= y; | x = x * y; |
/= | x /= y; | x = x / y; |
%= | x %= y; | x = x % y; |
int total = 10;
total += 5; // total = 15
total *= 2; // total = 30
total %= 7; // total = 2
En Java, las conversiones de tipo permiten transformar un valor de un tipo de dato primitivo a otro.
Conversión automática, de tipo pequeño a grande, sin pérdida. También llamada type promotion.
int num = 42;
double resultado = num; // int -> double
Conversión explícita; requiere cast y puede perder datos. También llamada type casting.
double pi = 3.14;
int entero = (int) pi; // 3
⚠️ ¡Cuidado! La conversión puede truncar valores si el rango del tipo destino es menor.
| Conversión | Automática | Necesita cast | Posible pérdida |
|---|---|---|---|
| Widening | ✅ | ❌ | ❌ |
| Narrowing | ❌ | ✅ | ✅ |
La clase Scanner permite leer datos desde distintas fuentes, como la entrada estándar del teclado. Pertenece al paquete java.util y debe ser importada.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner teclado = new Scanner(System.in);
System.out.print("Ingrese su nombre: ");
String nombre = teclado.nextLine();
System.out.print("Ingrese su edad: ");
int edad = teclado.nextInt();
}
}
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner teclado = new Scanner(System.in);
System.out.print("Ingrese su nombre: ");
String nombre = teclado.nextLine();
System.out.print("Ingrese su edad: ");
int edad = teclado.nextInt();
}
}
Importamos la clase Scanner desde el paquete java.util.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner teclado = new Scanner(System.in);
System.out.print("Ingrese su nombre: ");
String nombre = teclado.nextLine();
System.out.print("Ingrese su edad: ");
int edad = teclado.nextInt();
}
}
Creamos un Scanner sobre System.in: la entrada estándar del teclado.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner teclado = new Scanner(System.in);
System.out.print("Ingrese su nombre: ");
String nombre = teclado.nextLine();
System.out.print("Ingrese su edad: ");
int edad = teclado.nextInt();
}
}
Pedimos y leemos una línea de texto completa con nextLine().
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner teclado = new Scanner(System.in);
System.out.print("Ingrese su nombre: ");
String nombre = teclado.nextLine();
System.out.print("Ingrese su edad: ");
int edad = teclado.nextInt();
}
}
Pedimos y leemos un número entero con nextInt().
nextLine() → lee una línea completa (incluye espacios).nextInt(), nextDouble() → leen valores numéricos (ignoran saltos de línea).next() → lee una sola palabra (hasta un espacio).Después de usar métodos como nextInt(), puede ser necesario limpiar el buffer con nextLine() para evitar errores de lectura.
System.out.print("Ingrese un número entero: ");
int numero = teclado.nextInt();
teclado.nextLine(); // Limpia el salto de línea pendiente
System.out.print("Ingrese su dirección: ");
String direccion = teclado.nextLine();