我有两个方法:一个创建HashMap,另一个应该从第一个获取HashMap。有人可以帮忙怎么做?
代码:
public HashMap<Object, Integer> createHash(boolean include){
HashMap<Object, Integer> newMap = new HashMap<Object, Integer>();
if(!include){
do some stuff
}
return newMap;
}
public ArrayList<String> getHash(boolean include){
HashMap<Object, Integer> newMap = new newMap.createHash(); //getting error or below
HashMap<Object, Integer> newMap = new createHash();//error too
//here I would like to use newMap
return something;
}
编辑:两种方法都属于同一类
答案 0 :(得分:1)
createHash
方法是一种非静态函数,驻留在某些类,您尚未向我们展示。调用此方法的正确语法,如当前定义的那样:
//create an instance
MyFoo foo = new Foo(); // instance of class you haven't shown us
//invoke the createHash method on the foo instance...
Map<Object, Integer> newMap = foo.createHash(true);
或
如果您已经在MyFoo
的实例上,请直接调用该方法:
Map<Object, Integer> newMap = createHash(true);
您正在使用的语法:
new createHash();
不会编译。 new关键字仅适用于构造函数。