【发布时间】:2015-03-09 23:48:27
【问题描述】:
我对 Java 非常陌生,我想知道如何比较 2 个整数?我知道 == 完成了工作.. 但是等于呢?这可以比较2个整数吗? (当我说整数时,我的意思是“int”而不是“整数”)。 我的代码是:
import java.lang.*;
import java.util.Scanner;
//i read 2 integers the first_int and second_int
//Code above
if(first_int.equals(second_int)){
//do smth
}
//Other Code
但由于某种原因,这不起作用..我的意思是 Netbeans 给了我一个错误:“int cannot be dereferenced”为什么?
【问题讨论】:
-
int是原始(特殊)类型,它不是对象。您可以使用==比较原语 -
那么为什么存在equals呢?仅适用于字符串?
-
不,
equals的存在是为了比较任何两个Objects 的相等性(这是定义equals的地方)。==比较内存地址/引用信息。一个对象的两个实例可能被认为是相等的,因为它们的内容是相等的,但是它们的内存引用不一样