两个非常简单的代码行不起作用,只是没有。 (机器人)

时间:2013-11-18 02:18:20

标签: android arrays intellij-idea

我在Android上创建了一个非常简单的应用程序,它们的两行代码无法正常工作。

两行

protected int images[];
images = [R.drawable.loading, R.drawable.loading1, R.drawable.loading2, R.drawable.loading3, R.drawable.loading4];

是的,我知道你可以将这两行作为一行,但在程序中,一行位于类的开头,另一行位于onCreate()。

错误:

1.Red在第二个“[”字符下划线。 消息:意外令牌

2.Red在第二个“]”字符下划线。 消息:;预期

我是Android开发的初学者,这可以在As3,Javascript和C ++中使用,但似乎不适用于此。

你们中许多人告诉我使用{}(大括号)而不是[](方括号),但是大部分代码不起作用。 这是获得红色下划线的部分:

{R.drawable.loading, R.drawable.loading1, R.drawable.loading2, R.drawable.loading3, R.drawable.loading4}

这是我得到的错误:此处不允许使用数组初始化程序 如果有帮助,我正在使用intelliJ。第一行再次位于类的开头,另一行位于'onCreate()'。

4 个答案:

答案 0 :(得分:5)

改为:

protected int [] images = new int [] { R.drawable.loading, R.drawable.loading1, R.drawable.loading2, R.drawable.loading3, R.drawable.loading4 };

答案 1 :(得分:4)

你的语法错了,这样做:

protected int images[] = {R.drawable.loading, R.drawable.loading1, R.drawable.loading2, R.drawable.loading3, R.drawable.loading4};

希望这有帮助。

答案 2 :(得分:2)

protected int images[]; // or protected int[] images;
images = new int[]{R.drawable.loading, R.drawable.loading1, R.drawable.loading2, R.drawable.loading3, R.drawable.loading4};

OR

protected int[] images = {R.drawable.loading, R.drawable.loading1, R.drawable.loading2, R.drawable.loading3, R.drawable.loading4}; 
// or protected int images[] = {R.drawable.loading, R.drawable.loading1, R.drawable.loading2, R.drawable.loading3, R.drawable.loading4}; 

答案 3 :(得分:1)

如何使用protected int [] images;代替protected int images[];来声明数组? 即:

protected int [] images = {R.drawable.loading, R.drawable.loading1, R.drawable.loading2, R.drawable.loading3, R.drawable.loading4};

事实上,如果您阅读How do I declare and initialize an array in Java?,您将了解使用Java初始化数组的各种方法。同样@ user2652394建议,绝对不会在问题中使用花括号。希望这可以帮助。