Tôi có hai chuỗi giống nhau, một trong một mảng và một trong một biến Chuỗi. Khi tôi so sánh các chuỗi IDENTICAL tôi nhận được sai mỗi lần. Tôi đã gỡ lỗi và sửa lỗi, nhưng tôi nhận được kết quả tương tự mỗi lần. Đây là mã được đề cập đếnSo sánh các chuỗi giống hệt cho tôi false
String temp = ""+(num1*num2);
Boolean equal = temp == answers[i];
if(equal) {
correct[i] = true;
num_correct ++;
}else{
correct[i] = false;
}
Một lần nữa, tôi đã gỡ rối từng chi tiết nhỏ của chương trình này và tôi chắc chắn 101% rằng các chuỗi là NHẬN ĐỊNH. Tại sao Java trả về false khi so sánh?
Tại sao bạn đang sử dụng một Boolean (lớp java) thay vì kiểu boolean mẹ đẻ? Ngoài ra, tại sao sử dụng toán tử == thay vì phương thức equals()? – SirDarius
Chúng tôi cần danh sách 10 câu hỏi thường gặp hàng đầu, == thay vì bằng luôn xuất hiện. –
@Steve Kuo Đó là một ý tưởng tuyệt vời. Nên đề xuất nó trên meta nếu nó không có. – jdmichal