在循环内增加Java中的int

时间:2013-06-26 00:44:29

标签: java increment

在过去的几个小时里,我一直在搜索,我只是无法在Java中找到一个简单的计数器!我尝试了AtomicInteger,它是getAndIncrement()方法,但是没有用。

基本上我有一个for循环,并且在if语句中,我希望每次在for循环中将int递增1,if语句等于true。然后在for循环之后返回int。

int不会增加。

帮助!

编辑 - 它在Eclipse for Android上:

public int markTest(Map<Long, String> selectedAnswers,
            Map<Long, String> correctAnswers) {
        int mark = 0;
        for (long i = 1; i <= selectedAnswers.size(); i++) {

            String userSelection = selectedAnswers.get(i).toString();
            if (userSelection == correctAnswers.get(i))
                mark++;
        }

        return mark;
    }

2 个答案:

答案 0 :(得分:2)

检查字符串相等性的正确方法是使用String.equals()而不是相等==运算符。

if (userSelection.equals(correctAnswers.get(i))) {

由于您的if条件一直失败标记没有增加。此外,由于 selectedAnswers 已经是toString()类型

,因此不需要Map<Long, String>
String userSelection = selectedAnswers.get(i);

<强> 参考文献:
Java String.equals versus ==
How do I compare strings in Java?

答案 1 :(得分:0)

在if语句写入计数++示例之后

并且不要忘记在循环count = 0之外初始化计数或者你想要开始的任何数字。

如果(条件) 计数++;

返回计数;