gpt4 book ai didi

java 将对象转换为 PrintWriter

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:04:19 25 4
gpt4 key购买 nike

我有一个 Object 类型的数组,我在其中保存不同类型的对象,我想在将它们从数组中取出后将它们转换回它们的特定类型。因此,当我取出 PrintWriter 对象时,我尝试使用 PrintWriter(objArray[1][2]),但这不起作用,我该怎么做。

最佳答案

向下转型按如下方式进行:

SubType instanceOfSubType = (SubType) instanceOfSuperType;

因此,在您的特定情况下,您可能希望这样做:

PrintWriter printWriter = (PrintWriter) objArray[1][2];

另请参阅 Sun's tutorial about inheritance 中的“类型转换对象”一章(向下滚动大约一半)。

也就是说,将所有内容收集在一个不透明的 Object[] 中不是很理想。如果可以,只需创建一个自定义的类 Javabean 类,在每个类下封装一个 PrintWriter。 field 。例如

public class MyBean {
private PrintWriter printWriter;
public void setPrintWriter(PrintWriter printWriter) {
this.printWriter = printWriter;
}
public PrintWriter getPrintWriter() {
return printWriter;
}
}

这样您就可以将它们收集到 List<MyBean> 中(要了解有关集合的更多信息,请查看此 Sun tutorial on the subject )。

List<MyBean> myBeans = new ArrayList<MyBean>();
MyBean myBean1 = new MyBean();
myBean1.setPrintWriter(printWriter1);
myBeans.add(myBean1);
MyBean myBean2 = new MyBean();
myBean2.setPrintWriter(printWriter2);
myBeans.add(myBean2);
// ...

这样您就可以按如下方式检索它们:

for (MyBean myBean : myBeans) {
PrintWriter printWriter = myBean.getPrintWriter();
// ...
}

关于java 将对象转换为 PrintWriter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2268305/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com