は、私は教授が私に与えられ、次の変数Stringを汎用型に変換する方法<E>?
protected E data;
protected BinaryTree<E> left,right;
でバイナリツリーBinaryTree<E>
を持っていると私は次のコードで成功しなかった各ノード(ここで示すのみ関連するコード)の値を倍にするように頼まれました:
if (data != null) {
this.setData(String.valueOf(Integer.parseInt(getData().toString()) * 2));
}
残念ながら、これは私が取り除くしたいと思います次の警告を発生させます:
1 error found:
Error: incompatible types: java.lang.String cannot be converted to E
アイデアは?
あなたの課題は理にかなっていません。任意のタイプの「値を倍にする」ことはできません。あなたは教授に正確に何が意味しているかを指定するように頼むべきです。 – yole
ここで@yoleは命令です:メソッド6-8は、バイナリツリーに格納された文字列が実際には整数であることを前提としています。あなたのコードはInteger.parseIntメソッドを使ってintに変換する必要があります。そのうち7. void doubles(); ツリーの各ノードの整数値を2倍します。 – cyril