这是我遇到问题的代码片段:
int inputIsInt = Integer.valueOf(JTextFieldName.getText());
String format = NumberFormat.getInstance().format(inputIsInt);
boolean isSame = format.equals(JTextFieldName.getText());
if (isSame == true) {...
最佳答案
显然,诊断的下一步是打印两个格式化字符串。我怀疑您会发现这是“1,000”和“1000”之间的区别 - 但这取决于您所在的区域设置。
从这种体验中得到的重要一点根本与字符串格式化无关 - 它与调试和诊断有关:
- 您可以记录两个字符串以确定差异
- 您可以编写一个简短但完整的程序来显示这两个值
- 您可以在程序执行时使用调试器检查这些值
- 您可以编写一个单元测试
确保您了解所有这些选项,并确定何时使用哪些选项 - 这将使您成为更好的开发人员,并让您自己解决 future 的问题。 (我不介意帮助任何人,但如果你能帮助自己,通常会更快:)
关于java - 我的 boolean 值对于任何等于或大于 1000 的值都会返回 false,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11810764/