Intellij dài "nguyên giá trị quá lớn", nhưng trong phạm vi của long.maxvalue
Đây có thể là một điều ngớ ngẩn nhưng làm thế nào có thể như vậy mà trình biên dịch sẽ hiển thị này trong khi Long.Max = 9223372036854775807
?
Intellij dài "nguyên giá trị quá lớn", nhưng trong phạm vi của long.maxvalue
Đây có thể là một điều ngớ ngẩn nhưng làm thế nào có thể như vậy mà trình biên dịch sẽ hiển thị này trong khi Long.Max = 9223372036854775807
?
Bạn phải có Long
literals trong Java kết thúc với một L
, thêm một L
để bạn số nguyên sẽ khắc phục sự cố của bạn, như vậy: Long s = 9223372036854775806L
Đây là vì theo mặc định Java giải thích tất cả các số nguyên như 32-bit (int
), hậu tố L
đảm bảo rằng số nguyên của bạn được hiểu là 64-bit.
chỉ cần đặt 'l' hoặc 'L' ở phần cuối của nó và nó sẽ là ok, như:
long a = 9223372036854775807L;
Sử dụng Long s = 9223372036854775806L