A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© an_lucas 中级黑马   /  2015-4-14 14:42  /  873 人查看  /  16 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

为什么String.equals()可以使用,而int.equals()却不行呢,String 和 int 不是都是用来定义变量类型的吗?

16 个回复

倒序浏览
不太明白问题,能说的具体一点吗?或者把代码贴出来
回复 使用道具 举报
王小乖 发表于 2015-4-14 15:22
不太明白问题,能说的具体一点吗?或者把代码贴出来

就是为什么int.equals()会报错,而String.equals()却不会。
回复 使用道具 举报
我理解的是不是一个是引用类型,一个是常量的关系
回复 使用道具 举报
.equals后面字符。int后面用==这个符号。 int a   a==10.    string name    name.equals'男'
回复 使用道具 举报
好像明白了。。。String是对象类型所以可以用Object中的equals方法,而int不是对象类型。。。。
回复 使用道具 举报
cyr 中级黑马 2015-4-14 17:28:29
7#
int是基本类型,不具有equals方法的。
回复 使用道具 举报
int是变量类型而不是一个类,本身不带equals方法,要使用该方法,需要包装为Integer类。
new Integer(int i).equals()或Integer.valueOf(int i).equals()
回复 使用道具 举报
Zack 中级黑马 2015-4-15 01:22:14
9#
int 是个数据类型 不是类,如果用equals方法的话 new一个Integer类对象来用~
回复 使用道具 举报
明白了~~
回复 使用道具 举报
查查api 文档吧
回复 使用道具 举报

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

new Integer(int i).equals()或Integer.valueOf(int i).equals()
回复 使用道具 举报
int是基本数据类型。基本数据类型不能当作类使用,、string是引用数据类型,可以使用
回复 使用道具 举报
String是类类型变量,int是基本数据类型变量,Integer是int基本数据类型的包装类类型变量,他有String.equals()。
回复 使用道具 举报
因为int是基本数据类型二String是引用数据类型,只有引用数据类型的变量可以调用方法啊。
回复 使用道具 举报
String是一个类,它继承于Object类并重写了equals方法。而int是基本数据类型,并不是一个类,int对应的封装类是Integer,Integer有equals方法
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马