Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.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 从arrayList获取元素_Java_Arraylist - Fatal编程技术网

Java 从arrayList获取元素

Java 从arrayList获取元素,java,arraylist,Java,Arraylist,我在存储成员对象的arrayList中遇到问题。我想这可能与我的声明方式有关。这就是我目前所拥有的 会员类 package assignment; import java.util.ArrayList; public class Member { private int memberID; private String memberName; private int memberAge; private int numOfBooksLoaned; private int penalties;

我在存储成员对象的arrayList中遇到问题。我想这可能与我的声明方式有关。这就是我目前所拥有的

会员类

package assignment;
import java.util.ArrayList;
public class Member {

private int memberID;
private String memberName;
private int memberAge;
private int numOfBooksLoaned;
private int penalties;

public Member(int memberID, String memberName, int memberAge, int numOfBooksLoaned, int penalties) {
    this.memberID = memberID;
    this.memberName = memberName;
    this.memberAge = memberAge;
    this.numOfBooksLoaned = numOfBooksLoaned;
    this.penalties = penalties;
}

public int getMemberID() {
        return memberID;
    }




    public void setMemberID(int memberID) {
        this.memberID = memberID;
    }




    public String getMemberName() {
        return memberName;
    }




    public void setMemberName(String memberName) {
        this.memberName = memberName;
    }




    public int getMemberAge() {
        return memberAge;
    }




    public void setMemberAge(int memberAge) {
        this.memberAge = memberAge;
    }




    public int getNumOfBooksLoaned() {
        return numOfBooksLoaned;
    }




    public void setNumOfBooksLoaned(int numOfBooksLoaned) {
        this.numOfBooksLoaned = numOfBooksLoaned;
    }




    public int getPenalties() {
        return penalties;
    }




    public void setPenalties(int penalties) {
        this.penalties = penalties;
    }




}
package assignment;
import java.util.Scanner;
import java.util.ArrayList;

public class MemberList {

private ArrayList<Member> Members;

    public MemberList(ArrayList<Member> Members)
    {
        this.Members = Members;
    }

    public void addNewMember()
    {

        Scanner input = new Scanner(System.in);
        boolean successful = false;
        int memberID;
        String memberName;
        int memberAge;

        do {

            System.out.println("/t/tCreate new member" + "/nPlease enter your full name: ");
            memberName = input.nextLine();
            for (int i = 0; i < Members.size(); i++) {
                if (Members.get(i).getMemberName().equalsIgnoreCase(memberName)) {
                    System.out.println("This member name is already in use");
                } else {
                    successful = true;
                }

            }

        } while (successful == false);
成员列表类

package assignment;
import java.util.ArrayList;
public class Member {

private int memberID;
private String memberName;
private int memberAge;
private int numOfBooksLoaned;
private int penalties;

public Member(int memberID, String memberName, int memberAge, int numOfBooksLoaned, int penalties) {
    this.memberID = memberID;
    this.memberName = memberName;
    this.memberAge = memberAge;
    this.numOfBooksLoaned = numOfBooksLoaned;
    this.penalties = penalties;
}

public int getMemberID() {
        return memberID;
    }




    public void setMemberID(int memberID) {
        this.memberID = memberID;
    }




    public String getMemberName() {
        return memberName;
    }




    public void setMemberName(String memberName) {
        this.memberName = memberName;
    }




    public int getMemberAge() {
        return memberAge;
    }




    public void setMemberAge(int memberAge) {
        this.memberAge = memberAge;
    }




    public int getNumOfBooksLoaned() {
        return numOfBooksLoaned;
    }




    public void setNumOfBooksLoaned(int numOfBooksLoaned) {
        this.numOfBooksLoaned = numOfBooksLoaned;
    }




    public int getPenalties() {
        return penalties;
    }




    public void setPenalties(int penalties) {
        this.penalties = penalties;
    }




}
package assignment;
import java.util.Scanner;
import java.util.ArrayList;

public class MemberList {

private ArrayList<Member> Members;

    public MemberList(ArrayList<Member> Members)
    {
        this.Members = Members;
    }

    public void addNewMember()
    {

        Scanner input = new Scanner(System.in);
        boolean successful = false;
        int memberID;
        String memberName;
        int memberAge;

        do {

            System.out.println("/t/tCreate new member" + "/nPlease enter your full name: ");
            memberName = input.nextLine();
            for (int i = 0; i < Members.size(); i++) {
                if (Members.get(i).getMemberName().equalsIgnoreCase(memberName)) {
                    System.out.println("This member name is already in use");
                } else {
                    successful = true;
                }

            }

        } while (successful == false);
错误表明类型
Member
getMemberName()
未定义。 有什么想法吗


我使用了与使用arrayList完全相同的方法,它工作得很好,但由于某些原因,它现在无法工作

尝试以这种方式使用foreach循环

for (Member m : Members) {
    if (m.getMemberName().equalsIgnoreCase(memberName)) {
        System.out.println("This member name is already in use");
    } else {
        successful = true;
    }
}
另一件事是,在Java中,不鼓励在类成员的第一个字母处使用大写字母,将列表定义为

private ArrayList<Member> members;
私有数组列表成员;

请发布整个stackTrace,以及整个成员类。如何发布整个stackTrace?复制粘贴控制台。:)我运行程序后,错误消失了,现在可以正常工作了吗?我现在知道事情是怎么发生的了:)无论如何谢谢你的帮助亚辛·哈贾:没问题,即使我没有做太多:)