我想创建一些我只能用“代码工厂方法”来描述的东西。
为了避免代码重复,我想创建一个方法,其中包含要执行的代码,但类型应该放在“占位符”的位置。该方法当然会将这些类型作为参数,并将每个类型放在适当的位置。例如:
void factory(placeholder1, placeholder2){
ArrayList<placeholder1> List = new ArrayList<placeholder1>;
Placeholder2 variable;
}
factory(String, Integer);将会产生以下结果:
ArrayList<String> List = new ArrayList<String>;
Integer variable;你知道我该怎么做吗?
非常感谢您的帮助。
编辑:感谢您的所有反馈。我使用了通用的方法,它一直在起作用,直到我遇到了我相信有人之前提到的东西。我想在一个泛型对象中使用其中一个方法,例如:
整数变量= new Integer();
variable.isInteger();
看起来我不能使用泛型来做到这一点。有没有可能解决这个问题?
发布于 2010-10-02 04:14:04
下面是它看起来的样子:
<placeholder1, placeholder2> void factory(){
ArrayList<placeholder1> List = new ArrayList<placeholder1>;
placeholder2 variable;
}
this.<String, Integer> factory();但是我同意matt的观点,你应该阅读泛型的知识。另外,要小心类型擦除,因为这可能不会完成您所期望的一切。
发布于 2010-10-02 04:19:16
看起来您需要某种宏工具,而不是简单地采用泛型。Java没有这样的功能。例如,为了扩展一下您的示例,您不能这样做:
factory(String, Integer);
List.get(variable);https://stackoverflow.com/questions/3842697
复制相似问题