黑马程序员技术交流社区

标题: 为什么indexOf()接收的参数是int型? [打印本页]

作者: 李永佳    时间: 2015-12-15 22:46
标题: 为什么indexOf()接收的参数是int型?
如题,请问各位为什么 indexOf() 和 lastIndexOf() 两个方法接收的参数类型是 int 。而在输入时写的是例如'c'这样的char。

作者: songjianzaina    时间: 2015-12-16 12:10
楼主指的是String类中的indexof()和lastindexof()吧。它们俩不仅可以接收int类型的参数,还可以接收string类型的参数。



作者: 1158147908    时间: 2015-12-23 00:44
songjianzaina 发表于 2015-12-16 12:10
楼主指的是String类中的indexof()和lastindexof()吧。它们俩不仅可以接收int类型的参数,还可以接收str ...

说的好详细,受教了
作者: Hi.。    时间: 2015-12-23 09:56
楼上可能没有明白楼主的意思。
indexOf(int ch) ,使用的时候,这里即使写成了  str.indexOf( 'a' );也不会报错,因为这里隐含了一个默认转换,对数据类型提升。
byte,short,char -- int -- long -- float -- double
所以即使传递了一个char类型数据,也可以转为int类型
作者: 我有一个邮箱了    时间: 2015-12-23 10:47
因为索引是int类型,这两个方法返回的都是索引
作者: TG·小强    时间: 2015-12-23 15:55
因为,java采用的是编码表为unicode,而且字符能够自动提升
作者: hard    时间: 2015-12-23 17:52
你看看API就明白了
作者: dg216888    时间: 2015-12-23 23:19
传递数据和接受返回值,返回值是int,传递数据是char的话说明是字符类型,也就是查找字符在字符串中第一次出现的索引(索引必然是int型的)
作者: 一大把手    时间: 2015-12-25 16:58
这是获取某一个字符的位置
作者: 隔壁老猫    时间: 2015-12-26 00:07
每次看到你头像都忍不住点进来
作者: 李永佳    时间: 2015-12-29 10:36
隔壁老猫 发表于 2015-12-26 00:07
每次看到你头像都忍不住点进来

虐死强迫症专业户,哈哈哈哈




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