簡體   English   中英

Java打印Arraylist

[英]Java printing Arraylist

這是我的2個班級,它們起作用。 我想將Member添加到LanArrayList中。 我的問題是,我似乎無法打印出LanArrayList中設置的成員,名稱和別名或僅名稱。 當我打印此文件時:Member @ 1279d2f,有什么想法嗎? :S

import java.util.ArrayList;

public class Lan
{

private ArrayList<Member> members;



    public Lan()
    {
      members = new ArrayList<Member>();

    }

    public void addMember(Member newMember)
    {
        if(newMember.getBalance() >= 200)
        {
            this.members.add(newMember);
        }
        else
        {
            System.out.println("You dont have enough money to enter");
        }

    }
   public void printMembers(){

       System.out.println("People attending");
       for(Member member : members){

          System.out.println(member);
       }

   }

}


public class Member
{

    private String name;
    private String alias;
    private int balance;


    public Member(String fullName, String nickname)
    {
        this.name = fullName;
        this.alias = nickname;
        this.balance = 0;
    }
    public void setBalance(int account)
    {
        if(account > 0)
        {
            balance = balance + account;
        }
        else
        {
            System.out.println("You have not entered a valid number");
        }
    }

    public String getName()
    {
        return name;
    }
    public String getAlias()
    {
        return alias;
    }

    public int getBalance()
    {
        return balance;
    }
}

您必須為會員類定義toString()方法:

public class Member { 

  private String name;
  private String alias;
  private int balance;


  public Member(String fullName, String nickname)
  {
      this.name = fullName;
      this.alias = nickname;
      this.balance = 0;
  }
  public void setBalance(int account)
  {
      if(account > 0)
      {
          balance = balance + account;
      }
      else
      {
          System.out.println("You have not entered a valid number");
      }
  }

  public String getName()
  {
      return name;
  }
  public String getAlias()
  {
      return alias;
  }

  public int getBalance()
  {
      return balance;
  }

  @Override
  public String toString() {
    return this.name + "\t" + this.balance;
  }

}

如果沒有自定義類的toString()方法,則將其在內存中的位置打印出來。 如果您要在“會員”中打印其他信息,請修改我為您提供的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM