Trình biên dịch Java online

Viết, biên dịch, chạy và gỡ lỗi code Java trực tuyến trong IDE đầy đủ tính năng. Làm việc với nhiều tệp, lưu workspace, chia sẻ và cộng tác theo thời gian thực mà không cần cài đặt.

Thư viện cài đặt sẵn
🚀 258,689 tổng số lượt thực thi (4,135 trong tháng này)
Nhúng
Kết quả

Luyện Python với thử thách lập trình

Giải các bài tập thực tế ngay trên trình soạn thảo này: chạy kiểm thử mẫu, nộp bài và nhận đánh giá code từ AI.

Tất cả thử thách Python
Dễ

Rectangle Perimeter

Compute the perimeter of a rectangle from its sides.

Bạn sẽ học Số họcGiá trị trả về
BeginnerLearning-pathVariables
Dễ

Distance Between Points

Compute the straight-line distance between two points.

Bạn sẽ học Định lý PythagoreCăn bậc hai
BeginnerFunctionsLearning-pathmath
Dễ

Trung Bình Của Ba Số

Tính trung bình cộng của ba số nguyên.

Bạn sẽ học Số họcPhép chia
BeginnerLearning-pathVariables
Dễ

Days in a Month

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

Bạn sẽ học Quy tắc lịchHàm phụ trợ
BeginnerConditionsFunctionsLearning-path
Dễ

Tích vô hướng của hai vector

Nhân hai vector theo từng phần tử rồi cộng kết quả lại, phép tính cốt lõi của mọi nơ-ron.

Bạn sẽ học VectorTích vô hướng
Mạng nơ-rontrí tuệ nhân tạohọc máy
Dễ

Kiểm Tra Số Nguyên Tố

Xác định xem một số có phải là số nguyên tố hay không.

Bạn sẽ học Tính chia hếtTối ưu vòng lặp
BeginnerLoopsNumbersStudent-beginner
Dễ

Số Armstrong

Kiểm tra một số có bằng tổng các chữ số của nó lũy thừa lên số lượng chữ số hay không.

Bạn sẽ học Tách chữ sốLũy thừa
BeginnerNumbersStudent-beginner
Dễ

Số Lớn Nhất Trong Ba Số

Chọn số lớn nhất trong ba số mà không dùng hàm max có sẵn.

Bạn sẽ học So sánhKết hợp điều kiện
BeginnerConditionsLearning-path
Dễ

Tam giác số

Xây dựng một tam giác các số tăng dần.

Bạn sẽ học Hàng tăng dầnBiến đếm qua các hàng
BeginnerLearning-pathNested-loopsPatterns
Dễ

Row Sums

Add up every row of a grid.

Bạn sẽ học Danh sách 2 chiềuVòng lặp lồng nhau
BeginnerGridsLearning-path
Dễ

Sum of Odd Numbers

Add every odd number up to a limit.

Bạn sẽ học Vòng lặp forBiến cộng dồn
BeginnerLearning-pathLoops
Dễ

Danh sách việc cần làm

Quản lý danh sách công việc: thêm, đánh dấu xong, xóa và báo những việc còn lại.

Bạn sẽ học Collection có kiểuRecord
BeginnerSimulationStrings

☕ Giới thiệu về Trình thực thi Java trực tuyến này

CodeUtility Java Executor cho phép bạn viết và chạy chương trình Java trực tiếp trên trình duyệt - không cần cài đặt, cấu hình JDK hay IDE. Nó được vận hành bởi một sandbox an toàn hỗ trợ các phiên bản môi trường chạy Java thực 8, 11, 17, 21 và mới nhất.

Công cụ này biên dịch và thực thi mã Java trên đám mây bằng trình biên dịch javac thật và môi trường chạy Java thực, vì vậy bạn có thể kiểm thử lớp, phương thức và logic đúng như khi chạy cục bộ.

Dù bạn đang luyện lập trình hướng đối tượng, chuẩn bị phỏng vấn, hay thử các đoạn mã trước khi tích hợp, CodeUtility Java Executor cung cấp một môi trường nhanh và đáng tin cậy để chạy mã Java thực ngay lập tức từ bất kỳ thiết bị nào.

Không chỉ là công cụ chạy mã

Sử dụng trình soạn thảo nhiều tệp, terminal thực thi biệt lập, thư viện riêng theo môi trường chạy, không gian làm việc lâu dài, tính năng chia sẻ và cộng tác theo thời gian thực ngay trong cùng một trình thực thi.

Cách sử dụng trình thực thi này?

Chọn môi trường chạy, mở hoặc tạo tệp, viết mã rồi nhấn Chạy. Kết quả xuất hiện trong terminal; người dùng đã đăng nhập có thể lưu tệp trong không gian làm việc, cài thư viện và cộng tác qua liên kết chia sẻ.

  1. Chọn phiên bản rồi chỉnh sửa tệp hiện tại hoặc mở một tệp khác trong không gian làm việc.
  2. Chạy mã, nhập dữ liệu trong terminal khi được yêu cầu và xem lại lịch sử chạy đã lưu.
  3. Sử dụng thư viện, công cụ không gian làm việc, chia sẻ và trò chuyện khi tác vụ cần nhiều hơn một đoạn mã.

💡 Kiến thức cơ bản về Java & Ví dụ bạn có thể thử ở trên

1. Khai báo biến và hằng

Java yêu cầu bạn khai báo kiểu của từng biến. Dùng final cho hằng số.

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

// Hằng số
final int MAX_USERS = 100;
final String COMPANY = "CodeUtility";

2. Điều kiện (if / switch)

Dùng if, else if và switch để điều khiển luồng.

int x = 2;
if (x == 1) {
    System.out.println("Một");
} else if (x == 2) {
    System.out.println("Hai");
} else {
    System.out.println("Khác");
}

switch (x) {
    case 1:
        System.out.println("Một");
        break;
    case 2:
        System.out.println("Hai");
        break;
    default:
        System.out.println("Khác");
}

3. Vòng lặp

Dùng for, while và do-while để lặp.

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

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

4. Mảng

Mảng chứa dãy phần tử cùng kiểu với kích thước cố định.

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

5. Thao tác với ArrayList

Dùng ArrayList cho danh sách có kích thước động.

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. Nhập/Xuất console

Dùng Scanner để nhập và System.out để xuất.

import java.util.Scanner;

Scanner scanner = new Scanner(System.in);
System.out.print("Nhập tên của bạn: ");
String name = scanner.nextLine();
System.out.println("Xin chào, " + name);

7. Hàm

Định nghĩa phương thức với kiểu trả về và tham số.

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

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

8. HashMap

Dùng HashMap để lưu trữ cặp khóa-giá trị.

import java.util.HashMap;

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

9. Xử lý ngoại lệ

Dùng try và catch để xử lý ngoại lệ lúc chạy.

try {
    throw new Exception("Đã xảy ra sự cố");
} catch (Exception e) {
    System.out.println(e.getMessage());
}

10. I/O tệp

Dùng Files và Paths từ java.nio.file để làm việc với tệp.

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

Files.writeString(Paths.get("file.txt"), "Xin chào, tệp");
String content = Files.readString(Paths.get("file.txt"));
System.out.println(content);

11. Thao tác với chuỗi

Chuỗi trong Java hỗ trợ nhiều phương thức như length(), substring() và contains().

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

12. Lớp & Đối tượng

Java hỗ trợ lập trình hướng đối tượng bằng các lớp và thể hiện.

class Person {
    String name;
    Person(String name) {
        this.name = name;
    }
    void greet() {
        System.out.println("Chào, tôi là " + name);
    }
}

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