java - 如何从同一类java中的另一个方法访问多个对象?

哇哇哇

这是我的代码,我试图在我的 getData() 方法中访问 e1、e2、e3,但它不起作用。如何让我的第二种方法识别第一种方法但将方法分开?

public class Model {

    public Model() {
        loadData();
    }

    public void loadData() { 
        Employee e1 = new Employee("John Smith", "California, PA.", "Dr. Robertson junior.");

        Employee e2 = new Employee("Kyle Alston",  "State College, PA.", "SmithTown");

        Employee e3 = new Employee("Tommy Smith", "Baskeville, PA.", "Chicago");
        
      
    }
    public String getData(int n)  { 
        if(n == 1){
            return e1;

        }
        if(n == 2){
            return e2;

    }
        if(n == 3){
            return e3;

    }
        
        
        
    }
}

我试过 Model data = new loadData().e1 但我认为这行不通。

提前致谢。我不允许更改参数。

用户16632363

使用成员变量将值从一种方法保留到另一种方法。

public class Model {

    private Employee e1, e2, e3;

    public Model() {
        loadData();
    }

    public void loadData() { 
        e1 = new Employee("John Smith", "California, PA.", "Dr. Robertson junior.");
        e2 = new Employee("Kyle Alston",  "State College, PA.", "SmithTown");
        e3 = new Employee("Tommy Smith", "Baskeville, PA.", "Chicago");    
    }

    public String getData(int n)  { 
        if (n == 1) {
            return e1;
        }
        if (n == 2) {
            return e2;
        }
        if (n == 3) {
            return e3;
        }
        return null;
    }
}

为了比较,使用一个简单的数组重写。这里的好处是 getData 现在独立于员工数量。

public class Model {

    private Employee[] e;

    public Model() {
        loadData();
    }

    public void loadData() { 
        e = new Employee[3];
        e[0] = new Employee("John Smith", "California, PA.", "Dr. Robertson junior.");
        e[1] = new Employee("Kyle Alston",  "State College, PA.", "SmithTown");
        e[2] = new Employee("Tommy Smith", "Baskeville, PA.", "Chicago");    
    }

    public String getData(int n)  { 
        if (n <= 0 || n > e.length) {
           return null;
        }
        return e[n-1];
    }
}

我可能会考虑使用 ArrayList 而不是数组,但数组在 Java 中更为基础,我认为这使其成为初始学习的更好选择。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

无法从 JAVA 中同一类的另一个方法调用方法

Java:直接从同一类的另一个实例访问私有字段

如何访问Java中另一个类的另一个方法内的类中的方法

Java:如何从另一个类访问方法

如何从Java中的另一个类访问对象?

如何访问另一个类中的对象(Java)

从Java中同一类的另一个同步方法中创建的新线程中调用同步方法

使用 Swing 时的 Java 方法 - 可以在同一类的另一个事件方法中调用事件方法吗?

如何通过Java中的方法将对象从一个类传递到另一个类

如何在Java中使用同一类中的另一个设置器为设置器赋值

另一个类中的Java ActionListener-从主类访问对象

从Java中的另一个类访问变量

从Java中的另一个类访问变量

我们如何在Android中另一个Java类的静态方法中访问活动类的ArrayList对象?

如何在Java中的另一个类中从主类访问int?

无法从java中的另一个类访问一个类

如何从另一个.java文件中的另一个类调用方法?

Java如何使用另一个类的实例访问方法

无法访问Java中另一个类中方法的返回实例

如何使用一个类的构造函数作为Java中另一个类的对象的参数?

Java:如何在另一个类中使用在一个类中实例化的对象?

java - 如何在另一个类中创建一个类的对象,反之亦然?

如何在Java中访问另一个类的Arraylist

如何从Java中的另一个类访问变量?

如何从Java中私有的另一个类访问数组?

如何从另一个类java调用带有参数作为对象的方法?

从另一个类调用静态方法而无需在 Java 中创建对象

如何在Eclipse / Java中的同一工作区中引用另一个项目中的类

你如何创建一个使用另一个类的变量的java对象?