0

我将此代码作为我的页面查看器和片段活动的一部分:

    @Override
    public int getCount() {
        if (GlobalVars.operator.equals("vodafone")) {
            return 5;
        }
        if (GlobalVars.operator.equals("kpn")) {
            return 4;
        }
        return 0;
    }

当满足其中一个条件时,它会转到返回 5 的行;或返回 4;然后返回 0;为什么不只将方法与 if-then 部分的返回值一起保留?

4

1 回答 1

4

在 Java 中,一个方法只能有一个返回值。这意味着getCount不能同时返回4or50

作为一种调试方法,您可以尝试以某种方式显示函数的返回值(例如System.out.println(getCount());)。如果显示的值为0,则您的条件均未满足,并且该方法返回您的“其他地方”值。

我想你没有对这个上下文的数据进行正确的比较。正如一些评论者所提到的,如果您正在接收字符串数据,您可能需要比较忽略大小写;此外,如果您从某个输入流接收数据,您可能需要确保它没有前导或尾随空格。

于 2013-01-26T23:22:31.647 回答