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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始


为什么这么简单的小程序,就是通不过编译呢?

6 个回复

倒序浏览
因为你sop里传入的参数是String类型,而al.indexOf()返回的是int类型
你把sop的参数改为Object obj就没问题了
回复 使用道具 举报
你在定义sop时候,形参是String类型的,而在主函数里面sop(al.indexOf("shu02"))中al.indexOf("shu02")返回的是一个int类型的数据,也就是说把一个int类型的数据让String类型的变量来接收,int类型的数据不会自动转换为String类型,这样自然就错了。而sop函数形参的类型改为Object,这样就会有一个自动装箱的过程(即把基本数据类型int转换为其对应的包装类Integer对象),再实现多态就Ok了。
回复 使用道具 举报
你在定义sop时候,形参是String类型的,而在主函数里面sop(al.indexOf("shu02"))中al.indexOf("shu02")返回的是一个int类型的数据,也就是说把一个int类型的数据让String类型的变量来接收,int类型的数据不会自动转换为String类型,这样自然就错了。而sop函数形参的类型改为Object,这样就会有一个自动装箱的过程(即把基本数据类型int转换为其对应的包装类Integer对象),再实现多态就Ok了。
回复 使用道具 举报
在仔细看过你的代码了,在第23行出了问题,解决办法跟楼上说的差不多。
sop里传入的参数是String类型,而al.indexOf()返回的是int类型
回复 使用道具 举报
杨鹏 发表于 2012-5-11 13:41
你在定义sop时候,形参是String类型的,而在主函数里面sop(al.indexOf("shu02"))中al.indexOf("shu02")返回 ...

哦了。是这的问题,谢了啊。呵呵
回复 使用道具 举报
在仔细看过你的代码了,在第23行出了问题,解决办法跟楼上说的差不多。
sop里传入的参数是String类型,而al.indexOf()返回的是int类型
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马