ユーザーからの入力をString
としており、その文字列をclass
型のパラメータを持つメソッドに渡したいとします。 これは可能ですか? 私はHashmapを使ってみました。それは働くだろうか?続いクラスの型パラメータを持つメソッドへの引数としての文字列ユーザー入力の受け渡し
は、関連するコードである:
Node
は、クラスタイプとstartNode
とgoalNode
は、次String
入力
public class search {
Scanner input = new Scanner(System.in);
filename = input.next();
File file = new File(filename);
System.out.print("Enter the start node: ");
startNode = input.next();
System.out.print("Enter the goal node: ");
goalNode = input.next();
search s = new search();
Map<String,Node> map = new HashMap<String,Node>();
Node start = new Node();
Node goal = new Node();
map.put("startNode",start);
map.put("goalNode",goal);
System.out.println(map.get("startNode")); //IT IS PRINTING NULL HERE
s.searchmap(map.get("startNode"), map.get("goalNode")); //CALLING THE METHOD
ユーザあるsearchmap方法例えば
public void searchmap(Node Start, Node Goal) {
...... }
され、ユーザーがスタートノードに 's'を入力し、ゴールノード(文字列)に 'g'を入力した場合、方法にNode
型として渡されますsearchmap
私はこれを行うと、私はnullを返しています。 なぜそうですか?手がかりの任意の種類は非常にこのmap
がキーのマッピングを保持していない場合value
が指定key
がマッピングされた、またはnull
さにどのreturn
ますhashmap
に
おそらく 'start'はnullです。スニペットではなく、[mcve]を投稿してください。問題を再現できる場合は、あなたを助けるためのより良い立場になります。 –
'start'と' goal'変数に値を割り当てるコードを表示してください。 –
私はそれを編集しました、確認してください – rose