Online Java Compiler

Write, compile, run, and debug Java code online in a full-featured browser IDE. Work with multiple files, save your workspace, and share or collaborate in real time - no setup required.

Bibliotecas preinstaladas
🚀 260,408 ejecuciones totales (5,854 este mes)
Insertar
Salida

Practica Java con desafíos de código

Resuelve problemas prácticos en este editor: ejecuta las pruebas de ejemplo, envía tu solución y recibe una revisión de código por IA.

Todos los desafíos de Java
Fácil

Distance Between Points

Compute the straight-line distance between two points.

Aprenderás Teorema de PitágorasRaíces cuadradas
BeginnerFunctionsLearning-pathmath
Fácil

Days in a Month

Return how many days a month has, including leap years.

Aprenderás Reglas del calendarioFunciones auxiliares
BeginnerConditionsFunctionsLearning-path
Fácil

Average of Three

Average three whole numbers.

Aprenderás AritméticaDivisión
BeginnerLearning-pathVariables
Fácil

Producto escalar de dos vectores

Multiplica dos vectores elemento a elemento y suma los resultados, la operación central de toda neurona.

Aprenderás VectoresProducto escalar
Redes neuronalesaiaprendizaje automático
Fácil

El mayor de tres

Elige el mayor de tres números sin usar una función máxima incorporada.

Aprenderás ComparacionesCombinar condiciones
BeginnerConditionsLearning-path
Fácil

Verificación de número primo

Determina si un número es primo.

Aprenderás DivisibilidadOptimizar bucles
BeginnerLoopsNumbersStudent-beginner
Fácil

Number Triangle

Build a triangle of increasing numbers.

Aprenderás Filas crecientesContador entre filas
BeginnerLearning-pathNested-loopsPatterns
Fácil

Número de Armstrong

Verifica si un número es igual a la suma de sus dígitos elevados a la cantidad de dígitos.

Aprenderás Extraer dígitosPotencias
BeginnerNumbersStudent-beginner
Fácil

Row Sums

Add up every row of a grid.

Aprenderás Listas 2DBucles anidados
BeginnerGridsLearning-path
Fácil

Min and Max Together

Find the smallest and largest value in one pass.

Aprenderás Una sola pasadaVarios valores de retorno
ArraysBeginnerFunctionsLearning-path
Fácil

Contar pares con una suma

Cuenta los pares de posiciones cuyos valores suman un objetivo dado.

Aprenderás Pares de índicesEvitar contar dos veces
ArraysBeginnerLearning-pathNested-loops
Fácil

Hollow Square

Draw the outline of a square with * characters.

Aprenderás Detectar bordesConstruir cadenas
BeginnerLearning-pathNested-loopsPatterns

☕ Acerca de este ejecutor de Java en línea

El Ejecutor de Java de CodeUtility te permite escribir y ejecutar programas Java directamente en tu navegador - sin instalación, configuración de JDK ni IDE. Funciona con un sandbox seguro que admite versiones reales del runtime de Java 8, 11, 17, 21 y la más reciente.

Esta herramienta compila y ejecuta código Java en la nube usando un compilador javac real y un entorno de ejecución de Java, para que puedas probar clases, métodos y lógica exactamente como se comportarían de forma local.

Ya sea que estés practicando programación orientada a objetos, preparándote para entrevistas o probando fragmentos antes de la integración, el Ejecutor de Java de CodeUtility ofrece un entorno rápido y confiable para ejecutar código Java real al instante desde cualquier dispositivo.

Más que un ejecutor de código

Utiliza un editor de varios archivos, un terminal de ejecución aislado, bibliotecas específicas del entorno, espacios de trabajo persistentes, opciones para compartir y colaboración en tiempo real desde el mismo ejecutor.

¿Cómo se utiliza este ejecutor?

Elige un entorno de ejecución, abre o crea un archivo, escribe el código y selecciona Ejecutar. El resultado aparece en el terminal; los usuarios que han iniciado sesión pueden conservar archivos en un espacio de trabajo, instalar bibliotecas y colaborar mediante elementos compartidos.

  1. Selecciona una versión y edita el archivo actual o abre otro archivo del espacio de trabajo.
  2. Ejecuta el código, introduce datos en el terminal cuando se soliciten y revisa el historial de ejecuciones guardado.
  3. Utiliza bibliotecas, herramientas del espacio de trabajo, opciones para compartir y el chat cuando la tarea requiera más de un fragmento.

💡 Conceptos básicos de Java y ejemplos que puedes probar arriba

1. Declaración de variables y constantes

Java requiere que declares el tipo de cada variable. Usa final para constantes.

int age = 30;
double pi = 3.14159;
char grade = 'A';
String name = "Alice";
boolean isActive = true;

// Constantes
final int MAX_USERS = 100;
final String COMPANY = "CodeUtility";

2. Condicionales (if / switch)

Usa if, else if y switch para el control de flujo.

int x = 2;
if (x == 1) {
    System.out.println("Uno");
} else if (x == 2) {
    System.out.println("Dos");
} else {
    System.out.println("Otro");
}

switch (x) {
    case 1:
        System.out.println("Uno");
        break;
    case 2:
        System.out.println("Dos");
        break;
    default:
        System.out.println("Otro");
}

3. Bucles

Usa for, while y do-while para iterar.

for (int i = 0; i < 3; i++) {
    System.out.println(i);
}

int n = 3;
while (n > 0) {
    System.out.println(n);
    n--;
}

4. Arreglos

Los arreglos almacenan secuencias de tamaño fijo del mismo tipo.

int[] numbers = {10, 20, 30};
System.out.println(numbers[1]);

5. Manipulación de ArrayList

Usa ArrayList para listas de tamaño dinámico.

import java.util.ArrayList;

ArrayList<Integer> nums = new ArrayList<>();
nums.add(1);
nums.add(2);
nums.add(3);
nums.remove(Integer.valueOf(2));

for (int num : nums) {
    System.out.print(num + " ");
}

6. Entrada/salida por consola

Usa Scanner para la entrada y System.out para la salida.

import java.util.Scanner;

Scanner scanner = new Scanner(System.in);
System.out.print("Escribe tu nombre: ");
String name = scanner.nextLine();
System.out.println("Hola, " + name);

7. Funciones

Define métodos con tipos de retorno y parámetros.

public static int add(int a, int b) {
    return a + b;
}

System.out.println(add(3, 4));

8. HashMap

Usa HashMap para almacenar pares clave-valor.

import java.util.HashMap;

HashMap<String, Integer> ages = new HashMap<>();
ages.put("Alice", 30);
System.out.println(ages.get("Alice"));

9. Manejo de excepciones

Usa try y catch para manejar excepciones en tiempo de ejecución.

try {
    throw new Exception("Algo salió mal");
} catch (Exception e) {
    System.out.println(e.getMessage());
}

10. Entrada/salida de archivos

Usa Files y Paths de java.nio.file para manejar archivos.

import java.nio.file.*;
import java.io.IOException;

Files.writeString(Paths.get("file.txt"), "Hola archivo");
String content = Files.readString(Paths.get("file.txt"));
System.out.println(content);

11. Manipulación de cadenas

Las cadenas en Java admiten muchos métodos como length(), substring() y contains().

String text = "Hola Mundo";
System.out.println(text.length());
System.out.println(text.substring(0, 5));
System.out.println(text.contains("Mundo"));

12. Clases y objetos

Java admite programación orientada a objetos usando clases e instancias.

class Person {
    String name;
    Person(String name) {
        this.name = name;
    }
    void greet() {
        System.out.println("Hola, soy " + name);
    }
}

Person p = new Person("Alice");
p.greet();