java - 不知道如何修复我的代码

标签 java

嗨,过去几个小时我一直在尝试修复我的代码。问题是,当我去检查“”是否是一个整数时,它应该是假的,但它却返回真。我知道为什么会发生这种情况,因为它没有进入 for 循环并返回 true ,但我似乎无法弄清楚如何让它为“”返回 false 。如果需要,我可以提供更多信息。

public boolean isInteger(String str)
{
for (int x = 0, n = str.length(); x < n; x++)
{
  char c = str.charAt(x);
  if (c < '0' || c > '9') 
  {
    if (c != 0 || c != '-') 
    {
        return false;
    }
  }  
}    
return true;
}

感谢您花时间帮助我:)

最佳答案

您可以在尝试循环之前检查有效输入(即长度 = 0 的字符串)并返回 false。不过,你是对的,它没有进入循环,只是返回 true。

--编辑-- 类似的东西

if (string == null) || (string.length() == 0){
     return false
}

关于java - 不知道如何修复我的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33858106/

相关文章:

java - Spring Boot 应用程序 : Not picking up application. 属性?

java - 如何将 ListView 保存为文本文档而不是将其加载回程序中

java - 如何检查Java中抛出的异常类型?

java - 如何修复 Eclipse 中的 Maven、Maven 配置和 Maven 依赖性问题

java - 在 Camel 的 SEDA 队列中保留失败的消息

java - <list>标签在spring中是如何工作的

java - 在java中检查4个Arraylists不包含相同值的最简单方法

java - 将 Saxon-PE 与 Apache Camel 结合使用,预加载 Saxon 类时出错

java - 使用 li 元素迭代表

java - 如何防止碰撞后 body 移动 [Box2D] [AndEngine]