-1

我有 4 个按钮。

我有 4 个不同的字符串。

我想随机填充 4 按钮的文本* 我怎样才能简单地编码?

这是代码:

            switch(randomInt)
        {
        case 0:
            Button01.setText(livreFromBdd.getproposition1());
            Button02.setText(livreFromBdd.getproposition2());
            Button03.setText(livreFromBdd.getproposition3());
            Button04.setText(livreFromBdd.getproposition4());
        case 1:
            Button01.setText(livreFromBdd.getproposition4()); 
            Button02.setText(livreFromBdd.getproposition1());
            Button03.setText(livreFromBdd.getproposition2());
            Button04.setText(livreFromBdd.getproposition3());
        case 2:
            Button01.setText(livreFromBdd.getproposition3());
            Button02.setText(livreFromBdd.getproposition4());
            Button03.setText(livreFromBdd.getproposition1());
            Button04.setText(livreFromBdd.getproposition2());
        case 3:
            Button01.setText(livreFromBdd.getproposition2());
            Button02.setText(livreFromBdd.getproposition3());
            Button03.setText(livreFromBdd.getproposition4());
            Button04.setText(livreFromBdd.getproposition1());


.... etc

我想我可以做点别的,更简单,有什么想法吗?

谢谢,

4

2 回答 2

0

与其拥有getproposition1,为什么不在livreFromBdd类中拥有一个方法 saygetproposition(int index)它将在给定索引处返回适当的字符串。这样您就不需要所有这些方法。

伪代码:

  1. 有一个整数列表,其中包含 0 到按钮数 - 1。您可以使用循环轻松填充列表。

  2. 随机播放您在步骤 1 中创建的列表。您可以使用

    Collections.shuffle()。

  3. 循环遍历所有按钮。您可以创建按钮列表。

    for(int i = 0; i <buttons.size(); i++) {buttons.get(i).setText(livreFromBdd.getproposition(integerList.get(i)); }

于 2013-10-22T13:15:33.380 回答
0

你可以把四个字符串

livreFromBdd.getproposition1();
livreFromBdd.getproposition2();
livreFromBdd.getproposition3();
livreFromBdd.getproposition4();

在一个 ArrayList 中。然后生成一个介于 0 和 list.size()-1 之间的随机值,并将具有随机数索引的 List 条目添加到第一个 Button 并删除此列表 Entry。对每个按钮执行此操作。那应该工作:)

于 2013-10-22T12:54:10.373 回答