检查整数对阵列索引不起作用

时间:2015-05-21 12:41:11

标签: java arrays

我正在创建一个Android应用程序,当你显示一个特定的数字时,你点击一个按钮来停止一个循环计数器。我有一个数组(aNums)持有一些int值,并希望计数器在显示数组中的第一个数字(在本例中为“2”)时单击时停止。但是出于某种原因,它在点击时决定停在“1”上。我不确定我的代码是否错误,或者是否存在计时问题,并且当它即将更改为数字“2”时它正在停止。到目前为止,这是我的代码:

Criteria crit = session.createCriteria(TableClass.class);
crit.add(Restrictions.eq("fieldName", "string1"));

有谁知道问题是什么?

由于

1 个答案:

答案 0 :(得分:0)

你忘记了两个右括号:

View.OnClickListener handler2 = new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            for (int i = 0; i <= aNums.length; i++) {
                if (a == aNums[0]) {
                    Stop();
                } //I added this
            }
        }
}//and this

但我认为这里不需要for循环:当你点击a等于数组中索引0处的数字时,你想要停止线程,对吗?

View.OnClickListener handler2 = new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if (a == aNums[0]) {
                Stop();
            }
        }
}

此外,此检查不是必需的,因为a永远不会是10或更多:

if (a < 10) {
     handler.postDelayed(this, 1000);
} 

最后一件事:当您退出线程时,文本不会更新。点击后尝试添加updateText()

View.OnClickListener handler2 = new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if (a == aNums[0]) {
                Stop();
                updateText();
            }
        }
}