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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

如题,请问各位为什么 indexOf() 和 lastIndexOf() 两个方法接收的参数类型是 int 。而在输入时写的是例如'c'这样的char。

10 个回复

倒序浏览
楼主指的是String类中的indexof()和lastindexof()吧。它们俩不仅可以接收int类型的参数,还可以接收string类型的参数。


回复 使用道具 举报 1 0
songjianzaina 发表于 2015-12-16 12:10
楼主指的是String类中的indexof()和lastindexof()吧。它们俩不仅可以接收int类型的参数,还可以接收str ...

说的好详细,受教了
回复 使用道具 举报
楼上可能没有明白楼主的意思。
indexOf(int ch) ,使用的时候,这里即使写成了  str.indexOf( 'a' );也不会报错,因为这里隐含了一个默认转换,对数据类型提升。
byte,short,char -- int -- long -- float -- double
所以即使传递了一个char类型数据,也可以转为int类型
回复 使用道具 举报
因为索引是int类型,这两个方法返回的都是索引
回复 使用道具 举报
因为,java采用的是编码表为unicode,而且字符能够自动提升
回复 使用道具 举报
hard 中级黑马 2015-12-23 17:52:00
7#
你看看API就明白了
回复 使用道具 举报
传递数据和接受返回值,返回值是int,传递数据是char的话说明是字符类型,也就是查找字符在字符串中第一次出现的索引(索引必然是int型的)
回复 使用道具 举报
这是获取某一个字符的位置
回复 使用道具 举报
每次看到你头像都忍不住点进来
回复 使用道具 举报
隔壁老猫 发表于 2015-12-26 00:07
每次看到你头像都忍不住点进来

虐死强迫症专业户,哈哈哈哈
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马