Với đoạn mã sau:Java ngầm chuyển đổi
Float a = 1.2;
có lỗi bởi vì nó lấy số thập phân giá trị đôi và double
là một kiểu dữ liệu lớn hơn float
.
Hiện tại, số nguyên này là số nguyên theo mặc định int
loại. Vì vậy, tại sao mã sau đây không đưa ra bất kỳ lỗi nào?
Byte b = 20;
Tôi không biết tại sao bạn không hiểu câu hỏi của tôi ..... bạn nói rằng trình biên dịch đủ thông minh để đưa 20 vào byte .... thì tại sao trình biên dịch không đưa 1,2 vào float .... các ques đơn giản của tôi là ... tôi đọc rằng trong java tất cả thập phân được coi là gấp đôi trong khi tất cả các số nguyên được coi là int theo mặc định ...... sau đó khi im gán 20 đến một byte tại sao nó không đưa ra bất kỳ lỗi nào ... –