(使用Java)我正在實現一個泛型類,它是一個B樹。當用戶運行程序時,他們可以提供一些參數來確定樹的類型(整數,字符,雙精度或字符串)。創建泛型類的對象
在我的主要方法,我有這樣的代碼:
// Get user input and split it into tokens
// Tokens[1] = the type specified by the user
if(tokens[1].equals("DOUBLE"))
BTree<Double> t = new BTree<Double>();
else if(tokens[1].equals("CHARACTER"))
BTree<Character> t = new BTree<Character>();
else if(tokens[1].equals("INTEGER"))
BTree<Integer> t = new BTree<Integer>();
else if(tokens[1].equals("STRING"))
BTree<String> t = new BTree<String>();
但是,如果我有if語句,編譯器會抱怨。如果我刪除它們然後編譯並運行良好:/我該如何解決這個問題?這樣用戶可以提供類型,樹會根據提供的類型創建嗎?謝謝。
下面是一些編譯器輸出的:
C:\Users\User\Desktop>javac *.java
Main.java:42: error: cannot find symbol
BTree<Double> t = new BTree<Double>();
symbol: variable BTree
location: class Main
Main.java:42: error: cannot find symbol
BTree<Double> t = new BTree<Double>();
symbol: variable Double
location: class Main
Main.java:42: error: cannot find symbol
BTree<Double> t = new BTree<Double>();
symbol: variable t
location: class Main
..有更多的卻是相似的,重複每種類型
你能提供編譯器日誌嗎? – mishadoff 2012-03-29 08:08:55
我已將它編輯到問題:) – Tim 2012-03-29 08:14:47
問題標題說:'創建一個抽象類的對象',但實際上你問的東西不同。 – anubhava 2012-03-29 08:16:04