【问题标题】:How do I return values from certain type of array list?如何从某种类型的数组列表中返回值?
【发布时间】:2014-01-31 17:59:06
【问题描述】:

这个程序仅使用 getter 或 print 语句是否可行,还是我应该考虑用不同的方式来做?

如果我正在做的实际上是使用没有构造函数的 getter,那对我来说没有意义。所以,我相信从印刷声明的角度来看,它会更有意义。我还假设我不需要开设新课程。

我想如果真的那么简单,这个练习早就在教科书中了:

练习 129:

在下面的程序片段中,员工数据库中的每个员工都存储在一个 ArrayList 中。完成程序,输出所有员工的姓名。

public class MainClass
{
  public static void main( String[] args )
  {
    ArrayList<Employee> employees = new ArrayList<Employee>();

employees.add( new Teacher( "Fred Thompkins", 55, 525 ) );
employees.add( new SalesAssistant( "Eric Washington", 7, 72 ) );
employees.add( new Military( "Albert Costa", 236237, "Navy", "Seaman" ) );
employees.add( new Teacher( "Jane Austin", 724, 92 ) );
employees.add( new SalesAssistant( "Jane Black", 91, 295 ) );
employees.add( new Employee( "Scott Black", 23 ) );
employees.add( new SalesPartTime( "Janice Dell", 552, 501, 8.0 ) ); 

    for ( Employee e : employees )

    {



    }

    }
}

【问题讨论】:

  • 你的问题是如何迭代包含Employee类子类的employees对象??

标签: java class printing getter


【解决方案1】:

就这么简单。您只需为名称创建一个 getter 并打印它。

for ( Employee e : employees )
{
    System.out.println(e.getName());
}

或者,您可以覆盖EmployeetoString 方法

@Override 
public String toString() {
     return this.name;
}

然后,你可以调用

for ( Employee e : employees )
{
    System.out.println(e);
}

【讨论】:

    【解决方案2】:

    看起来您回答了自己的问题。你可以通过吸气剂来做到这一点。如果您在Employee(superclass) 类中有类似getName 的方法,那么下面的代码将完美运行

    for ( Employee e : employees ) {
        System.out.println(e.getName());
    }
    

    【讨论】:

    • 那还是不行。你的意思是这样的: public string getEmployee{ return Employee; }
    • 分成不同的行?
    • 有没有办法返回员工姓名?
    【解决方案3】:

    我真的解决了。如果你点击教科书中的“显示详细信息”,它会告诉你已经有一个“getName”方法。我只需要从 for 循环中的可编辑部分调用它。

        for ( Employee e : employees )
    
    {
        System.out.println(e.getName());
    }
    

    或者类似的东西。

    无论如何,这就是真正需要的一切。大声笑,它比我想象的要简单得多。

    【讨论】:

    • 这实际上是答案所说的。您应该接受最正确的答案,而不是来到这里并说它在新答案中解决了您的问题。
    • 要将答案标记为已接受,请单击问题分数下方的复选标记。这将为您和正确回答的人带来声誉。 meta.stackexchange.com/questions/5234/…
    猜你喜欢
    • 1970-01-01
    • 2018-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-03
    • 2012-01-13
    • 2013-03-08
    • 1970-01-01
    相关资源
    最近更新 更多