java - 数组列表的一个索引处的多个字符串

标签 java arraylist

我这里有一个带有两个字符串的构造函数:

public class person
{
    String first;
    String last;
    public person (String first, String last)
    {
        this.first = first;
        this.last = last;
    }
    public String toString()
    {
        String result = first + "\n";
        result += last + "\n";

        return result;
    }
}

以及创建构造函数的两个对象的主要方法:

import java.util.ArrayList;
public class k
{
    public static void main (String[] args)
    {
        ArrayList<person> list = new ArrayList<person>();
        person ken = new person ("Ken", "Smith");
        person ben = new person ("Ben", "Smith");

        list.add (ken);
        list.add (ben);

        System.out.println (list.get(0));
    }
}

现在代码打印 Ken Smith。我的问题是:如何让它只打印 Ken 而不是 Ken Smith?

最佳答案

按照惯例,Java 类名以大写字母开头。接下来,您覆盖 toString() 以打印两个名称。只需为名字添加一个 getter(对于此示例,我也为姓氏添加了一个 getter)

public class Person {
    String first;
    String last;

    public Person(String first, String last) {
        this.first = first;
        this.last = last;
    }

    public String getFirst() {
        return first;
    }

    public String getLast() {
        return last;
    }

    public String toString() {
        String result = first + "\n";
        result += last + "\n";

        return result;
    }
}

然后你可以调用(在main中)类似

System.out.println (list.get(0).getFirst());

关于java - 数组列表的一个索引处的多个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29641158/

相关文章:

java - 使用快速求幂进行加密/解密的负求幂

java - arraylist 排序并转换为 String[]

java - 按每个汉堡的成本降序排序,这是一个带有 Collections.sort 的 ArrayList

java - 转换到另一个 Activity 时保存成员变量

java - 在数组列表中搜索用户名和密码

java - 使用binarySearch从ArrayList中删除单词

Java - 非常小的图像上的多线程需要很长时间

java - 如何确定 java.sql.Connection 是否对 PostgreSQL JDBC4 有效

java - 如何更改 Hadoop 2 中用户日志的日志级别?

java - 不同线程之间代码块的序列化