我如何访问每个循环使用的另一个类中的ArrayList [英] How do i access ArrayList that is in another class using for each loop

查看:101
本文介绍了我如何访问每个循环使用的另一个类中的ArrayList的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在Message()方法循环中使用ArrayList? 我想访问arraylist并获得此人的属性,以便在注册过程中形成最终消息.

How do I use ArrayList in Message() method loop? I want to access the arraylist and get atributes of the person to form final message in registration process.

package sample;

import java.util.ArrayList;

public class PersonRegister {
    private static ArrayList<Person> regiter = new ArrayList<>();

    public void regitration (String name, String email, String phonennr, int year, int monht, int day, int age){
        Person onePerson = new Person(name,email,phonennr, year,monht,day,age);
        regiter.add(onePerson);

    }
}

这是注册消息类

package sample;

public class RegistrationMessage {
    public String Mesage(){

        String out="";

        for(Person onePerson : register){

            out+= onePerson.getName() + " "+ onePerson.getEmail()+ " "+ onePerson.getPhonenr()+ "\n" +
                    " som er fodt: "+ onePerson.getYear()+ "/"+ onePerson.getMonth()+"/"+ onePerson.getDay()+ " er"
                    +onePerson.getAge()+ " år gammel"+"\n";
        }
        return out;
    }
}

推荐答案

如注释中所述,您的静态ArrayList是私有的.要访问它,我们必须将其访问修饰符更改为public或创建一个称为Getter的方法.

As mentioned in the comments, your static ArrayList is private. To access it, we must either change its access-modifier to public or create what is called a Getter method.

这是后者的代码:

package sample;

import java.util.ArrayList;

public class PersonRegister {
private static ArrayList<Person> regiter = new ArrayList<>();

    public void regitration (String name, String email, String phonennr, int year, int monht, int day, int age){
        Person onePerson = new Person(name,email,phonennr, year,monht,day,age);
        regiter.add(onePerson);

    }

    public ArrayList<Person> getRegiter(){
        return(regiter);
    }
}

然后可以通过创建PersonRegister对象并通过点表示法访问它来在另一个类中访问该regiter.

The regiter can then be accessed in another class by creating a PersonRegister object and accessing it through dot notation.

PersonRegister personRegister = new PersonRegister();
personRegister.getRegiter(); //returns the ArrayList

我还要说要检查一下您的一些拼写;我相信您的意思是注册名,月份,电话号码等.

I would also say to check some of your spelling; I believe you mean register, month, phonenmr, etc.

这篇关于我如何访问每个循环使用的另一个类中的ArrayList的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆