为什么 Toast 会跳到此循环中的最后一个元素?

Why does Toast skip to last element within this loop?

我正在练习使用 Android Studio,所以我正在制作一个非常基本的程序,用户点击一个按钮,Toast 消息将遍历与该按钮相关联的数组中的每个元素使用 for 循环。出于某种原因,这只显示了数组中的最后一个元素。我已经测试过是否可以单独调用所有内容,并且那里没有问题,但是 for 循环只会显示最后一个元素。这仅仅是吐司的工作原理,还是我遗漏了什么?

    public void select(View v) {
    String tester = v.getTag().toString();

    if (tester.equals("Stage_01")) {
        for (int x = 0; x < stage_01.enemyList.length; x++) {
            Toast.makeText(this, "Monsters in stage 1: " + stage_01.enemyList[x], Toast.LENGTH_SHORT).show();
        }
    }
}

当在 for 循环中使用 toast 消息时,它实际上会堆积起来,我遇到的是消息中的一个小延迟。但是如果要弄清楚for循环是否遍历数组。

  1. 你可以放一个System.out.println("Monsters in stage 1: " + stage_01.enemyList[x]);在for循环里面。您可以在 android studio 的 运行 选项卡中看到输出。
  2. 你可以放一个Log.d("TAG", "Monsters in stage 1: " + stage_01.enemyList[x]);在for循环里面。您可以在 android studio 的记录器选项卡中看到输出。

这两个选项卡都位于 android studio 的底部。

希望这个回答能帮助您阐明遍历是否有效以及输出是否正确显示。