这其中有一个隐式的数据类型转换。在java中,要是某个字符串和某个变量一起(这个变量可能是数值型的数据也可能是布尔型的数据)利用“+”号连接起来时,系统会主动对这个变量进行转换,会将其转换为字符串数据类型,然后再与原先的字符串连接起来。
这就能解答你的疑问了,sop("sb==sb1:"+(sb==sb1));这条语句的输出内容是一个字符串和一个boolean类型的值使用“+”连接起来的,系统会自动将boolean类型的值转换成了字符类型,所以这样输出是没问题的。而sop((sb==sb1))这条语句是向接收String类型参数的函数中传入了一个boolean类型的参数,明显是不行的。
希望对你有帮助 |