Java 我的布尔值返回false等于或大于1000,为什么?

Java 我的布尔值返回false等于或大于1000,为什么?,java,boolean,Java,Boolean,以下是我遇到问题的代码片段: int inputIsInt = Integer.valueOf(JTextFieldName.getText()); String format = NumberFormat.getInstance().format(inputIsInt); boolean isSame = format.equals(JTextFieldName.getText()); if (is

以下是我遇到问题的代码片段:

            int inputIsInt = Integer.valueOf(JTextFieldName.getText());
            String format = NumberFormat.getInstance().format(inputIsInt);
            boolean isSame = format.equals(JTextFieldName.getText());
            if (isSame == true) {...

显然,诊断的下一步是打印两个格式化字符串。我想你会发现这是“1000”和“1000”之间的区别,但这取决于你所在的地区

从这次体验中获得的重要内容根本不是字符串格式,而是调试和诊断:

  • 您可以记录这两个字符串以确定差异
  • 您可以编写一个简短但完整的程序来显示这两个值
  • 您可以在程序执行时使用调试器检查这些值
  • 您可以编写一个单元测试

确保您了解所有这些选项,并确定何时使用这些选项-这将使您成为更好的开发人员,并允许您自己解决未来的问题。(我不介意帮助任何人,但如果你能帮助自己,通常会更快:)

诊断的下一步显然是打印两个格式化字符串。我想你会发现这是“1000”和“1000”之间的区别,但这取决于你所在的地区

从这次体验中获得的重要内容根本不是字符串格式,而是调试和诊断:

  • 您可以记录这两个字符串以确定差异
  • 您可以编写一个简短但完整的程序来显示这两个值
  • 您可以在程序执行时使用调试器检查这些值
  • 您可以编写一个单元测试

确保您了解所有这些选项,并确定何时使用这些选项-这将使您成为更好的开发人员,并允许您自己解决未来的问题。(我不介意帮助任何人,但如果你能自助,通常会更快:)

谢谢你的洞察力。我对编程相当陌生,还没有学到任何调试方面的知识,也没有学到您编写的大部分内容。我做了一个System.out.println(格式);虽然是的,它是1000,而我的输入格式是1000。我将在下一步研究如何在使用[enter]键时自动更改格式。再次感谢。感谢你的洞察力。我对编程相当陌生,还没有学到任何调试方面的知识,也没有学到您编写的大部分内容。我做了一个System.out.println(格式);虽然是的,它是1000,而我的输入格式是1000。我将在下一步研究如何在使用[enter]键时自动更改格式。再次感谢。顺便说一下,你可以用
if(isSame==true)
替换
if(isSame)
顺便说一下,你可以用
if(isSame)
替换
if(isSame)