我的TextView显示数组不起作用?

时间:2016-01-16 17:12:04

标签: java android arrays methods

在我的应用程序中,我有一个方法,旨在将新字符串放入第一个空索引中的字符串数组中。然后它被设计为在具有十行的文本框中显示该数组。出于某种原因,这是行不通的。我使用Log在Logcat中显示数组内容,但是没有出现。所以我想我会来这里询问是否有人能看到任何明显的错误导致它无法正常工作?如果您需要更多详细信息,例如使用数组的类,请告诉我们! :)

方法:

     String playerInvTemp[] = thePlayer.getPlayerInv();
               for (int i=0; i < playerInvTemp.length; i++)
               {
                   if ((!playerInvTemp[i].isEmpty()) || playerInvTemp[i] == null)
                   {
                       thePlayer.setPlayerInv("Torch", i);
                       Log.i(tag,thePlayer.getPlayerInv(1));
                       playerInvTemp = thePlayer.getPlayerInv();
                       Log.i(tag,playerInvTemp[1]);


                       StringBuilder builder = new StringBuilder();

                       for (String s : playerInvTemp) {
                           builder.append(s + " ");
                           invText.setText(builder.toString());
                       }

                       break;
                   }
               }

1 个答案:

答案 0 :(得分:0)

  1. 在内部循环中更改正在迭代的数组是一种非常糟糕的做法。
  2. 可能你有一个空字符串数组,在这种情况下你就是条件:

    ((!playerInvTemp [i] .isEmpty())|| playerInvTemp [i] == null)

  3. 仍然是假的。也许你的意思是:

    (!(playerInvTemp[i].isEmpty() || playerInvTemp[i] == null))