Java中的字符串比较和字符串实习

Alb*_*ore 7 java string equals string-comparison string-interning

何时应该将Strings作为对象进行比较,何时应该使用他们的equals方法?为了确保,我总是使用equals,但这似乎不是很有效.在什么情况下我可以确定string1 == string2使用安全?

谢谢!

Jon*_*eet 16

你应该几乎总是使用equals.你可以肯定,string1 == string2如果:

  • 您已经确定以其他方式获得了不同的值(例如,您正在使用从集合中获取的字符串值,但出于其他原因进行比较)
  • 你知道你正在处理编译时字符串常量
  • 你自己手动实现了字符串

根据我的经验,它确实不会经常发生.