phao r = 5.0f hoặc gấp đôi r = 5,0 Giá trị 5,0 là một số được biểu diễn dưới dạng phân số thập phân (có phần nguyên và phần phân số). Trong khoa học máy tính, những con số như vậy được gọi là thực
Số thực là số có phần nguyên và phần phân số. Phần nguyên và phần phân số được ngăn cách nhau bằng dấu chấm chứ không phải dấu phẩy như trong toán học.
Ngay cả khi phần phân số của số bằng 0, như trong biến \(r\) trong ví dụ, trình dịch vẫn sẽ tạo một biến thực trong bộ nhớ. Có thể nói, điểm này là một tín hiệu cho người dịch rằng cần phải tạo một biến thực. 

số rất lớn và rất nhỏ  được viết bằng cách sử dụng "dấu chấm động" (ở cái gọi là định dạng khoa học).  
Ở định dạng khoa học, một số được biểu diễn dưới dạng dấu trị(phần quan trọng của số) số mũ. Khi được ký hiệu, phần định trị và số mũ được phân tách với nhau bằng chữ e (biểu thị 10 ở một mức độ nào đó). 
Ví dụ: bạn có thể lưu trữ giá trị điện tích của một electron ( \(1.60217662 \times 10^{-19}\) C) trong một biến, viết dưới dạng sau float El = 1.60217662e-19f // đối với lệnh dương, có thể bỏ dấu + hoặc nhân đôiEl= 1.60217662e-19 Hầu như tất cả các số thực không thể được lưu trữ trong bộ nhớ máy tính với độ chính xác hoàn hảo, vì một số bit hạn chế được phân bổ để lưu trữ chúng. Do đó, khi tính toán với các số thực, các lỗi liên quan đến tính không chính xác của biểu diễn sẽ tích lũy. Hơn nữa, càng ít không gian được phân bổ, lỗi này sẽ càng lớn. Để giảm lỗi trong Java, loại double được sử dụng, lưu trữ một số thực với độ chính xác gấp đôi trong bộ nhớ (chiếm 8 byte trong bộ nhớ, trong khi loại gõ \(float \)- 4 byte)

Nhập

Bạn có thể nhập một số biến thực từ luồng đầu vào và ghi chúng vào các biến theo cách tiêu chuẩn: nhân đôi x = in.nextDouble(); float y = in.nextFloat(); Số đầu tiên đi vào biến \(x\), số thứ hai đi vào \(y\)

Đầu ra

Java có một số cách để hiển thị số thực.

1)  System.out.printf cho đầu ra bàn điều khiển đơn giản
Theo mặc định, khi sử dụng printf, các số thực được in với độ chính xác lên tới 6 chữ số thập phân. Nhưng có những trường hợp cần xuất ra với độ chính xác khác. Trong trường hợp này, bạn phải chỉ định số lượng quen thuộc để phân bổ sau dấu thập phân. gấp đôi a=0,5; System.out.printf("%f",a); // trên màn hình 0.500000 System.out.printf("%.2f",a); // trên màn hình 0,5 System.out.printf("%10.2f",a); // bạn có thể đặt tổng số vị trí được phân bổ cho đầu ra của số System.out.printf("%.2e",a); // hiển thị số ở định dạng khoa học với độ chính xác 2 chữ số 2) DecmialFormat để lấy một chuỗi từ một số sử dụng một mẫu nhất định
Lớp DecmialFormat cho phép bạn kiểm soát đầu ra của các số 0 ở đầu và cuối, tiền tố và hậu tố, dấu phân cách hàng nghìn và dấu phân cách mười nghìn, nhưng điều này làm cho mã phức tạp hơn một chút. gấp đôi a = 123,45; Định dạng thập phân df = Định dạng thập phân mới("#.###"); Chuỗi được định dạng = df.format(a); System.out.println(đã định dạng); //123,45

Đầu vào Mẫu Đầu ra Ghi chú
123,45 #.# 123,5 Hiển thị đến một chữ số thập phân có làm tròn
123,45 #.### 123,45 Hiển thị số nguyên không có số 0 đứng đầu
123,45 #.0 123,5 Hiển thị đến một chữ số thập phân có làm tròn
123,45 #.000 123.450 Hiển thị đến ký tự thứ ba với số 0 không đáng kể ở cuối
Khi làm việc với các số thực, bạn có thể sử dụng lớp Math đã quen thuộc, lớp này chứa một số lượng lớn các hàm dựng sẵn. 
Khi giải toán thường phải làm tròn số thực đến giá trị nguyên gần nhất. Có hai chức năng cho việc này.

NHỚ
1
với chuyển đổi loại rõ ràng ( float x=1.5f; int y = int (x) )  -  phần phân số của một số thực bị cắt (y = 1) 
2 Toán.tầng(x) -  trả về số nguyên lớn nhất nhỏ hơn hoặc bằng \(x\) (làm tròn xuống)
3 Math.ceil(x) -  trả về số nguyên nhỏ nhất lớn hơn hoặc bằng \(x\) (làm tròn lên)

Dưới đây là các chức năng hữu ích nhất có trong mô-đun cmath.
Ví dụ sử dụng:
Nâng 2 lên lũy thừa, vì pow trả về giá trị gấp đôi dưới dạng phản hồi, sau đó chuyển đổi thành int là bắt buộc.
công khai lớp Chính {
    công khai tĩnh khoảng trống chính(Chuỗi[] args) < spanstyle="color:#666666">{
       int a = 2;
       int b = (< span style="color:#b00040">int)Toán.pow(a,2);
    }
}

Chức năng Mô tả
Làm tròn
vòng(x) Làm tròn một số tới số nguyên gần nhất. Nếu phần phân số của số là 0,5 thì số đó được làm tròn thành số nguyên gần nhất. 
sàn(x) Làm tròn một số xuống ("sàn"), do đó sàn(1.5) == 1sàn(-1.5) ==  ; -2
trần(x) Làm tròn một số lên ("trần"), trong khi ceil(1.5) == 2ceil(-1.5) ==  ; -1
abs(x) Modulo (giá trị tuyệt đối).
Căn, logarit
sqrt(x) Căn bậc hai. Cách sử dụng: y = sqrt(x)
pow(x, y) Tăng x lên lũy thừa y. \(x^y\)
log(x) Logarit tự nhiên. 
exp(x) Cơ số của logarit tự nhiên e = 2,71828...
Lượng giác
sin(x) Sine của một góc được xác định bằng radian
cos(x) Cosine của một góc được chỉ định theo đơn vị radian
tan(x) Tang của một góc được chỉ định theo đơn vị radian
asin(x) Arcsine, trả về giá trị theo đơn vị radian
acos(x) Arc cosin, trả về giá trị theo đơn vị radian
atan(x) Arctangent, trả về giá trị theo đơn vị radian
atan2(y, x) Góc cực (tính bằng radian) của điểm (x, y).