Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 方法查找具有更多成员的状态的名称_Java_Arrays - Fatal编程技术网

Java 方法查找具有更多成员的状态的名称

Java 方法查找具有更多成员的状态的名称,java,arrays,Java,Arrays,我有一个main方法,它读取文本文件的内容,并将这些内容添加到成员资格的数组列表中(我创建的对象)。每个成员身份对象都有一个原始状态。我需要一种方法来计算每个州的会员人数并进行比较。有什么想法吗 public class Membership { @Override public String toString() { return "Membership Information ID=" + ID + ", Name=" + name + ", Phone="

我有一个main方法,它读取文本文件的内容,并将这些内容添加到
成员资格的
数组列表中(我创建的对象)。每个
成员身份
对象都有一个原始状态。我需要一种方法来计算每个州的会员人数并进行比较。有什么想法吗

public class Membership {

    @Override
    public String toString() {
        return "Membership Information ID=" + ID + ", Name=" + name + ", Phone=" + phone + ", State=" + state + ", Email=" + email
                + ", Company=" + company;
    }
    private String ID;
    private String name;
    private String phone;
    private String state;
    private String email;
    private String company;
    private String DOB;
    private String MemDate;
    private String age;


    public Membership(String iD, String name, String phone, String state,String company, String DOB,String MemDate, String email) {
        super();
        ID = iD;
        this.DOB = DOB;
        this.MemDate = MemDate;
        this.name = name;
        this.phone = phone;
        this.state = state;
        this.email = email;
        this.company = company;
    }
    public String getDOB() {
        return DOB;
    }

    public int getAge(){
        String shortDate = DOB.substring(DOB.length() - 4);
        int b = Integer.parseInt(shortDate);
        return 2016 - b;
    }
    public void setDOB(String dOB) {
        DOB = dOB;
    }
    public String getMemDate() {
        return MemDate;
    }
    public void setMemDate(String memDate) {
        MemDate = memDate;
    }
    public String getID() {
        return ID;
    }
    public void setID(String iD) {
        ID = iD;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPhone() {
        return phone;
    }
    public void setPhone(String phone) {
        this.phone = phone;
    }
    public String getState() {
        return state;
    }
    public void setState(String state) {
        this.state = state;
    }
    public String getEmail() {
        return email;
    }
    public void setEmail(String email) {
        this.email = email;
    }
    public String getCompany() {
        return company;
    }
    public void setCompany(String company) {
        this.company = company;
    }


}
有什么想法吗

public class Membership {

    @Override
    public String toString() {
        return "Membership Information ID=" + ID + ", Name=" + name + ", Phone=" + phone + ", State=" + state + ", Email=" + email
                + ", Company=" + company;
    }
    private String ID;
    private String name;
    private String phone;
    private String state;
    private String email;
    private String company;
    private String DOB;
    private String MemDate;
    private String age;


    public Membership(String iD, String name, String phone, String state,String company, String DOB,String MemDate, String email) {
        super();
        ID = iD;
        this.DOB = DOB;
        this.MemDate = MemDate;
        this.name = name;
        this.phone = phone;
        this.state = state;
        this.email = email;
        this.company = company;
    }
    public String getDOB() {
        return DOB;
    }

    public int getAge(){
        String shortDate = DOB.substring(DOB.length() - 4);
        int b = Integer.parseInt(shortDate);
        return 2016 - b;
    }
    public void setDOB(String dOB) {
        DOB = dOB;
    }
    public String getMemDate() {
        return MemDate;
    }
    public void setMemDate(String memDate) {
        MemDate = memDate;
    }
    public String getID() {
        return ID;
    }
    public void setID(String iD) {
        ID = iD;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPhone() {
        return phone;
    }
    public void setPhone(String phone) {
        this.phone = phone;
    }
    public String getState() {
        return state;
    }
    public void setState(String state) {
        this.state = state;
    }
    public String getEmail() {
        return email;
    }
    public void setEmail(String email) {
        this.email = email;
    }
    public String getCompany() {
        return company;
    }
    public void setCompany(String company) {
        this.company = company;
    }


}

提示:您可以使用
HashMap
来累加每个州的人数。

您可以通过流操作轻松做到这一点:

allMemberships.stream()
    .collect(Collectors.groupingBy(
        Membership::getState, Collectors.counting()))
这将返回一个
映射
,因为
所有成员身份
是一个
集合


您可以试试。

您的代码在哪里?首先发布
会员资格的代码以及您尝试的内容。请与我们共享您尝试的代码,以便更好地理解。共享您的代码,使其更清晰添加了会员资格类别代码。它是从文本文件中读取的,文本文件使用各州的首字母缩略词。伊利诺伊州的“IL”就是一个例子。