【问题标题】:Java - Assign button arraysJava - 分配按钮数组
【发布时间】:2017-07-11 05:39:56
【问题描述】:

我是否可以将已创建的按钮分配到数组中?

为简单起见,我有这个。但是我将有多达 50 个按钮,这很有效,但它是重复的。我可以直接将它们分配到一个数组中而不是一个一个地做吗?

Button [] BtnArray = new Button[3];            
BtnArray[0] = btn1;
BtnArray[1] = btn2;
BtnArray[2] = btn3;

我试过了,但是不行

BtnArray = {btn1, btn2, btn3};

谢谢!

【问题讨论】:

  • 为什么需要 50 个按钮?使用Recycler查看
  • 现在是 2017 年。请使用 ArrayList
  • 几个小时前你也问过同样的问题吗?
  • @TimBiegeleisen 哈哈,不。我的第一个问题是关于 onClick 按钮。这个只是问我是否可以将它们放入一个数组中,以便我可以更轻松地向每个按钮添加文本
  • 是的,您可以将它们添加到数组中,或者更好的集合中。

标签: java android arrays button


【解决方案1】:

即使制作 50 个按钮是一种非常糟糕的方法(甚至想不出在一个窗口中使用 50 个按钮的方法),这也是你尝试过的:

Button btn1 = new Button();
Button btn2 = new Button();
Button btn3 = new Button();
Button[] BtnArray = new Button[] { btn1, btn2, btn3 };

然后,您将能够使用 BtnArray[i] 访问 3 个按钮,其中 i 是一个介于 0 和 2 之间的数字。

如果您还有其他问题,请尽管提问。 cmets 中已经给出的提示是使用集合并动态生成按钮

【讨论】:

    【解决方案2】:

    如果您有一系列元素并希望将它们存储在一个集合中,您必须将它们添加到该集合中。您使用的数据结构取决于系统/应用程序的要求。有时数据的长度不清楚,可以使用动态长度的数据结构。或者有时你需要存储keyvalue的数据,你可以Map。无论如何,您可以通过以下方式轻松使用ArrayList

            Button btn1 = new Button();
            Button btn2 = new Button();
            //...
            ArrayList<Button> buttons = new ArrayList<Button>();
            buttons.add(btn1);
            buttons.add(btn2);
            //...
    

    【讨论】:

      【解决方案3】:

      如果您想将 50 个按钮添加到数组中,您可以创建长度为 50 的数组并在循环中创建按钮并将它们放在数组中的相应索引处;

      Button[] buttons = new Button[50];
      for(int i=0;i < buttons.length; i++){
          buttons[i] = new Button();
      }
      

      【讨论】:

      • 你为什么把这个网站链接到你所有的答案? StackOverflow 不是广告平台。
      • 我删除了那个链接。我认为人们可以在那里获得帮助
      • 获取信息,你是discussed on meta
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-01-24
      • 1970-01-01
      • 2015-03-14
      • 2021-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多