【问题标题】:enhanced loop is not printing correctly增强的循环未正确打印
【发布时间】:2013-10-12 08:27:08
【问题描述】:

我正在尝试使用增强的 for 循环从数组中打印出我的数据,但结果是垃圾。请帮忙,提前谢谢。

ArrayList 数组 = new ArrayList();

    //For loop to input names
    for(int i=0; i < 3; i++)
    {   
        System.out.print("Enter name of Player " + i +":");
        String startName = keyboard.nextLine();
        System.out.print("Enter jersey number of Player " + i +":");
        int playNum = keyboard.nextInt();
        startName = keyboard.nextLine();

        //Make objects and add to array
        HockeyPlayer p = new HockeyPlayer(startName, playNum);
        array.add(p);
    }
    keyboard.close();

循环的代码是:

System.out.println("The players are...");

        for(HockeyPlayer val : array)
        {
            System.out.println(val);
        }

它最终打印出这样的东西......我该如何解决它?

Please enter the names and jersey numbers of 3 hockey players.
Enter name of Player 0:Joeasdas
Enter jersey number of Player 0:213
Enter name of Player 1:Baskdja
Enter jersey number of Player 1:121
Enter name of Player 2:djasklaj
Enter jersey number of Player 2:455
The players are...
HockeyPlayer@3f84246a
HockeyPlayer@7c72cbb9
HockeyPlayer@549d1e83

【问题讨论】:

  • 为什么同一个问题要发两次?
  • 有人告诉我,如果我还有其他问题,我应该换个帖子。在最后一个中,我无法将对象添加到数组中。在这个中,我似乎无法正确打印。
  • 我在 20 分钟前为这个确切的问题写了一个答案,当你第一次发布它时。当您删除问题时,我刚刚发布了我的答案。抱歉,我懒得再打字了。如果您希望人们帮助您,请不要乱来。
  • 我很抱歉打扰了,大卫。当我第一次发布它时,我意识到我忘记了我的一段代码,所以我这么快就删除了它。再次抱歉。
  • 你知道有一个编辑功能,对吧?

标签: java arrays loops


【解决方案1】:

您必须重写 HockeyPlayer 类中的 toString 方法。例如:

public String toString() {
    return  number+" "+name;
}

【讨论】:

  • 嗨乔尼。你能解释一下这是如何工作的吗?我尝试使用它,但它似乎只打印出数字。
  • 那是因为你创建了一个空名字的玩家。看看你是如何分配 startName 两次的?
【解决方案2】:

HockeyPlayer@3f84246a 表示您没有覆盖 toString 方法。 只需在 HockeyPlayer 中声明这样的方法:

@Override 
public String toString()
{ 
  return "Your String"; 
}

【讨论】:

    【解决方案3】:

    默认情况下,Object 类中的 toString 方法会打印类名和其他一些数字,您可以覆盖它以打印您想要打印的内容,所以只需执行以下操作:

      @Override 
       public String toString()
      { 
          return "returning something"; 
      }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-31
      相关资源
      最近更新 更多