Tôi là người lập trình Java mới và tôi chỉ đọc một biến của một lớp số nguyên có thể được mô tả theo ba cách khác nhau trong API. Tôi có mã sau:So sánh giá trị số nguyên
if (count.compareTo(0)) {
System.out.println(out_table);
count++;
}
Đây là một vòng lặp và chỉ xuất ra out_table
.
Mục tiêu của tôi là tìm hiểu cách xem giá trị trong số nguyên count > 0
.
Tôi nhận ra rằng count.compare(0)
là cách chính xác? hoặc là nó count.equals(0)
?
Tôi biết số count == 0
không chính xác. Thê nay đung không? Có một toán tử so sánh giá trị ở đó chỉ count=0
của nó không?
Lỗi tương tự như luật sư. Đây là autounboxing. –
vâng, tệ của tôi. cố định điều đó. –
Ummm. Không hẳn. ... Trong các so sánh khác, điều này không phải luôn luôn như vậy. Điều gì nếu bạn đang so sánh hai số nguyên và sử dụng '=='? Sau đó, các cá thể được so sánh, nhưng đôi khi JVM không lưu trữ chúng để nó báo cáo các giá trị giống hệt nhau. Xem http://stackoverflow.com/questions/10002037/comparing-integer-values-in-java-strange-behavior. – ingyhere