Java由char数组得到String与值相同的String比较结果不相等

        最近使用java做作业,使用char数组去读取字符转化成字符串,然后与另一值相同的字符串使用equals比较,输出发现值一样,但是equals的比较结果却为false。

        最后通过debug发现String对象的内部也是一个char数组,通过char数组创建String时,如果不指定start和count,会将使用整个数组,即连同后面的空字符,输出结果不会受到影响。另外,String.trim()就是删除String 的char数组 前后的空白字符和空字符,使用trim()后再比较就得到值完全一样的String了。

        我之前的学习中,一直使用输出语句来找错误,经常要在很多地方写输出语句,非常累。所以无论程序是简单还是复杂,出错时利用debug去调试差错都是非常有用而且效率的,有时还会有新收获!

附上测试例子:


debug可以查看对象和变量的内部结构


猜你喜欢

转载自blog.csdn.net/qq_33209186/article/details/80570177
今日推荐