黑马程序员技术交流社区

标题: 关于String.equals() [打印本页]

作者: an_lucas    时间: 2015-4-14 14:42
标题: 关于String.equals()
为什么String.equals()可以使用,而int.equals()却不行呢,String 和 int 不是都是用来定义变量类型的吗?
作者: 王小乖    时间: 2015-4-14 15:22
不太明白问题,能说的具体一点吗?或者把代码贴出来
作者: an_lucas    时间: 2015-4-14 16:36
王小乖 发表于 2015-4-14 15:22
不太明白问题,能说的具体一点吗?或者把代码贴出来

就是为什么int.equals()会报错,而String.equals()却不会。
作者: 呆呆怪兽    时间: 2015-4-14 16:42
我理解的是不是一个是引用类型,一个是常量的关系
作者: 907888614    时间: 2015-4-14 17:21
.equals后面字符。int后面用==这个符号。 int a   a==10.    string name    name.equals'男'
作者: an_lucas    时间: 2015-4-14 17:25
好像明白了。。。String是对象类型所以可以用Object中的equals方法,而int不是对象类型。。。。
作者: cyr    时间: 2015-4-14 17:28
int是基本类型,不具有equals方法的。
作者: Iterater    时间: 2015-4-14 17:31
int是变量类型而不是一个类,本身不带equals方法,要使用该方法,需要包装为Integer类。
new Integer(int i).equals()或Integer.valueOf(int i).equals()
作者: Zack    时间: 2015-4-15 01:22
int 是个数据类型 不是类,如果用equals方法的话 new一个Integer类对象来用~
作者: smartisan    时间: 2015-4-15 06:43
明白了~~
作者: adalvik    时间: 2015-4-15 07:42
查查api 文档吧
作者: 段黄军    时间: 2015-4-15 08:03

int是变量类型而不是一个类
本身不带equals方法
要使用该方法
需要包装为Integer类。

new Integer(int i).equals()或Integer.valueOf(int i).equals()
作者: xlunaer    时间: 2015-4-15 08:39
int是基本数据类型。基本数据类型不能当作类使用,、string是引用数据类型,可以使用
作者: Anfinsenh    时间: 2015-4-15 08:50
String是类类型变量,int是基本数据类型变量,Integer是int基本数据类型的包装类类型变量,他有String.equals()。
作者: 若果每天都努力    时间: 2015-4-15 09:15
因为int是基本数据类型二String是引用数据类型,只有引用数据类型的变量可以调用方法啊。
作者: 燕赵之风    时间: 2015-4-15 09:33
String是一个类,它继承于Object类并重写了equals方法。而int是基本数据类型,并不是一个类,int对应的封装类是Integer,Integer有equals方法




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2