名称中的变量

Variable in a name

final ImageView element = (ImageView) findViewById(R.id.element);
final ImageView name = (ImageView) findViewById(R.id.name);
Button nextButton = (Button) findViewById(R.id.buttonNext);
nextButton.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
        element.setImageResource(image_elements[1]);
        name.setImageResource(image_names[1]);
    }
});

我的代码在硬编码时可以工作,但我想使用像 ++-- 这样的运算符。为什么我不能?示例如下。

element.setImageResource(image_elements[++]);
name.setImageResource(image_names[++]);

为什么这行不通,我怎样才能做到。

如果您的目标是在每次点击时移动到下一个元素,为什么不简单地使用一个 int 索引字段并递增它呢?

nextButton.setOnClickListener(new View.OnClickListener() {
    private int i = 0;
    public void onClick(View v) {

        // parallel array anti-pattern below is a no-no
        element.setImageResource(image_elements[i]);
        name.setImageResource(image_names[i]);
        i++;

        // if you want to cycle elements of the array and 
        // to prevent array index out of bounds:
        i %= image_elements.length;
    }
});