Sự khác biệt chính - float so với đôi
Trong lập trình, bắt buộc phải lưu trữ dữ liệu. Dữ liệu được lưu trong bộ nhớ. Các vị trí bộ nhớ lưu trữ dữ liệu được gọi là các biến. Mỗi vị trí bộ nhớ có thể lưu trữ một loại dữ liệu cụ thể. Kích thước bộ nhớ cho mỗi loại dữ liệu là khác nhau. Trong các ngôn ngữ lập trình như Python, người lập trình không cần khai báo kiểu của biến. Trong các ngôn ngữ lập trình như Java, lập trình viên nên khai báo kiểu biến. Có một số kiểu dữ liệu như char, int, float và double. Kiểu dữ liệu char được sử dụng để lưu trữ một giá trị ký tự. Kiểu dữ liệu int được sử dụng để lưu trữ các giá trị số không có dấu thập phân. Kiểu dữ liệu float và double được sử dụng để lưu trữ các giá trị số với dấu thập phân. Bài viết này thảo luận về sự khác biệt giữa float và double. Sự khác biệt chính giữa float và double là float là kiểu dữ liệu dấu phẩy động IEEE 754 32 bit chính xác đơn trong khi double là kiểu dữ liệu dấu chấm động IEEE 754 64 bit chính xác kép.
float là gì?
Dấu phẩy là một dấu chấm động 32-bit chính xác duy nhất. Nó là kiểu dữ liệu được xác định trước được hỗ trợ bởi các ngôn ngữ lập trình như Java. Để khai báo một biến float, từ khóa ‘float’ được sử dụng. Vì vậy nó không thể được sử dụng cho các tên định danh như tên phương thức và tên biến. Tham khảo chương trình bên dưới.
Hình 01: Chương trình Java với Kiểu dữ liệu float
Theo chương trình trên, số là một biến có thể lưu trữ một số dấu phẩy động. Ở đây, -20.5f được sử dụng thay vì -20.5. -20,5 là một chữ kép. Để chỉ ra trình biên dịch lưu trữ giá trị dưới dạng float, lập trình viên nên viết f hoặc F.
Đôi là gì?
Dấu đôi là dấu chấm động 64-bit có độ chính xác kép. Nó là một kiểu dữ liệu được xác định trước. Để khai báo một biến kép, từ khóa ‘double’ được sử dụng. Do đó, nó không thể được sử dụng cho các tên định danh như tên phương thức và tên biến. Tham khảo chương trình bên dưới.
Hình 02: Chương trình Java với Kiểu dữ liệu kép
Theo chương trình trên, số là một biến kiểu double. In số sẽ cho đầu ra là -20,5. Cần 64 bit trong bộ nhớ để lưu giá trị. Nếu lập trình viên được viết -20.5, nó được coi là một kép. Anh ta cũng có thể viết nó là -20,5d. Viết ‘d’ là tùy chọn.
Truyền kiểu có thể được thực hiện trên các kiểu dữ liệu. Đây là quá trình chuyển đổi một kiểu dữ liệu này sang một kiểu dữ liệu khác. Khi gán một kiểu dữ liệu nhỏ hơn cho một kiểu dữ liệu lớn hơn, không cần ép kiểu. Việc mở rộng xảy ra theo thứ tự byte, short, int, long, float, double. Khi gán một kiểu dữ liệu lớn hơn cho một kiểu dữ liệu nhỏ, cần phải thực hiện truyền.
Hình 03: Đúc
Theo chương trình trên, num1 và num2 có kiểu dữ liệu float. Tổng được gán cho tổng biến. Nó là một chiếc phao. Vì float là một kiểu dữ liệu nhỏ hơn so với double, nó có thể được gán trực tiếp cho số biến kép mà không cần ép kiểu.
X và y có thể lưu trữ các kiểu dữ liệu kép. Tổng được gán cho biến z. Nó cũng có thể lưu trữ gấp đôi. Truyền kiểu được yêu cầu để gán một kiểu dữ liệu lớn hơn cho một kiểu dữ liệu nhỏ hơn. Do đó, để lưu giá trị double vào biến float, cần thực hiện ép kiểu vì double là kiểu dữ liệu lớn hơn float.
Điểm giống nhau giữa float và double là gì?
- Cả float và double đều là các kiểu dữ liệu được xác định trước được hỗ trợ bởi các ngôn ngữ lập trình như Java.
- Cả hai loại float và double đều không được sử dụng cho các lựa chọn như tiền tệ.
Sự khác biệt giữa float và double là gì?
nổi vs đôi |
|
float là kiểu dữ liệu dấu chấm động 32 bit IEEE 754. chính xác duy nhất. | Double là kiểu dữ liệu dấu chấm động 64 bit IEEE 754 chính xác kép. |
Số byte | |
Phao dài 4 byte. | Đôi dài 8 byte. |
Giá trị mặc định | |
Giá trị mặc định của float là 0.0f. | Giá trị mặc định của double là 0.0d. |
Từ khóa | |
Từ khóa ‘float’ được sử dụng để khai báo một giá trị động. | Từ khóa ‘double’ được sử dụng để khai báo giá trị kép. |
Bộ nhớ cần thiết | |
float yêu cầu ít bộ nhớ hơn gấp đôi. | Double yêu cầu nhiều bộ nhớ hơn float. |
Tóm tắt - float vs double
Trong lập trình, việc lưu trữ dữ liệu là rất cần thiết. Những dữ liệu đó được lưu trữ trong các vị trí bộ nhớ và được gọi là các biến. Mỗi biến lưu trữ dữ liệu của kiểu cụ thể. Có các kiểu dữ liệu như int, char, double và float, v.v. Bài viết này đã thảo luận về sự khác biệt giữa hai kiểu dữ liệu là float và double. Sự khác biệt giữa float và double là float là kiểu dữ liệu, là dấu phẩy động IEEE 754 32 bit độ chính xác đơn trong khi double là kiểu dữ liệu, là dấu chấm động IEEE 754 độ chính xác kép.