2015-06-12 80 views
0

调用时相同的数据结构可以说我有2类:修改从其他方法

class A { 
    public static void main(String[] args) { 
      Class B cB = new ClassB(); 
      cB.modifyMethod(parameter);  
    } 
} 

class B { 
    private ArrayList<String> dataStucture = new ArrayList<String>(); 
    public void modifyMethod(int parameter) { 
     //............... 
    } 
} 

我打算做的是修改dataStructure 3倍。每次都基于一个新参数并调用表单classA。所以如果我打电话一次modifyMethod它会创建我想要的列表,但是当我第二次调用它时,我希望它在同一列表上工作,而不是创建一个新列表。

你能帮我解决这个问题吗?

+0

这不是你如何实例化一个类。 –

回答

1

如果这是你想要的,那么你可以进行数据结构的静态

​​

它将

0

Class B仅在Class A实例化一次B的所有实例之间共享,因此,所有的修改到ArrayList什么datastructure也适用于datastructure的特定实例。

做这样的事情:

class A { 
    public static void main(String[] args) { 
      B cB = new B(); 
      cB.modifyMethod(parameter);  
    } 
} 

class B { 
    private ArrayList<String> dataStucture = new ArrayList<String>(); 
    public void modifyMethod(String parameter) { 
     dataStructure.add(parameter); 
    } 
} 

我改变参数的类型modifyMethodString因为ArrayList的dataStucture是字符串。我也改变了你实例化你的类B的方式,你不需要在B前面的关键字Class来实例化它。