java - 声明一堆相似变量的最少行数

标签 java class variables coding-style

我正在 Android Studio 中制作棋盘,每个方 block 都有一个按钮。 64 个变量。如何在不占用 64 行的情况下在我的课开始时初始化所有这些?

我尝试将变量放在由 { ... } 括起来的代码块中,但它说不允许这样做。

private Button a1;
private Button a2;
private Button a3;
private Button a4;
private Button a5;
private Button a6;
private Button a7;
private Button a8;

我想要它,这样我就可以单击屏幕左侧的下拉箭头,这将使所有这些变量消失,直到我需要查看它们。

最佳答案

您可能想要使用 ArrayArrayList在这种特殊情况下。

对于 ArrayList 你可以这样做:

private ArrayList<Button> a = new ArrayList<Button>();
for(int i = 0; i < 64; i++)
    a.add(new Button());
System.out.println(a.get(0));

以上内容使您可以灵活地删除或添加按钮。要按名称而不是索引跟踪按钮,您可以使用 HashMap

对于 HashMap 你可以这样做:

private HashMap<String, Button> a = new HashMap<String, Button>();
for(int i = 0; i < 64; i++)
    a.add("Button"+String.valueOf(i), new Button());
System.out.println(a.get("Button0"));

关于java - 声明一堆相似变量的最少行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57750807/

相关文章:

ios - 如何创建自定义 iOS View 类并实例化它的多个副本(在 IB 中)?

JavaScript:按其他下拉列表的值过滤下拉列表

java - Firebase Google auth,退出并再次登录将使用上次登录的帐户登录

java - 如何在 Spring MVC 中使 jsonData 不区分大小写

css - 在表格类中设置 CSS 图像背景时出现问题

c++ - 分配大小无效 - 对象变量

python - python中变量名与程序效率

java - 编程变量问题(java)

java - 在 JavaScript 中将二进制字符串解析为字节

java - 将 JSON 子对象属性绑定(bind)到 Jackson 中的 Java 对象字段