DefaultMutableTreeNode

DefaultMutableTreeNode

是否可以将String变量转换为DefaultMutableTreeNode对象?
请解释。
内容:

String s = new String(outputTagName);
Object s2 = (Object) s;
DefaultMutableTreeNode selectedNode2 =(DefaultMutableTreeNode) s2;
DefaultMutableTreeNode parent2 =(DefaultMutableTreeNode) parent;
model.insertNodeInto(selectedNode2, parent2, parent2.getChildCount());


这是我写的代码。在以BreadthFirstSearch方式遍历树的枚举中使用它。
 2nf行给我这个错误:

java.lang.ClassCastException: java.lang.String cannot be cast to javax.swing.tree.DefaultMutableTreeNode at ....

最佳答案

您不能将String对象转换为String或Object或String实现的接口之一(Serializable,CharSequence,Comparable)以外的任何类型。要将对象转换为某种类型,对象必须是这种类型。字符串对象的类型为字符串,而不是类型为DefaultMutableTreeNode。您甚至不能将DefaultMutableTreeNode设为String的子类(在这种情况下,可以进行强制转换),因为String类是最终的。

09-27 17:49