2016-09-25 2 views
-1

私はJavaに慣れていないし、文字列、キーボードクラスメソッド、およびスキャナを使ってJava割り当てに取り組んでいる。私は、異なる状況でどのように使うべきか正確にはわかりません。私は、都市と州を入力するようにユーザーに促し、大文字、小文字の都市、大文字で再度状態を出力する結果を出力する必要があります。代入に関する質問は次のとおりです。キーボードクラスメソッドを使用して情報を入力し、結果を印刷するようにユーザーに促す方法は?

Stringとtypeの2つの新しい変数cityとstateを宣言します。ステートメントをプログラムに追加して、ユーザに自分の故郷 - 都市と州を入力させる。適切なキーボードクラスメソッドを使用して結果を読み取ります。次に、文字列クラスメソッドを使用して、州名(すべて大文字)、都市名(すべて小文字)、州名(大文字)の順で構成される新しい文字列を作成して出力します。ユーザーが状態のための都市のためのLilesvilleとノースカロライナ州に入るのであれば、プログラムは、文字列を作成して印刷する必要があります: NORTH CAROLINAlilesvilleNORTH CAROLINA

マイコード:

import java.util.Scanner; 



int city, state; 
Scanner scan = new Scanner (System.in); 
System.out.println ("Enter your hometown city:"); 
city = scan.nextInt(); 

System.out.println ("Enter your hometown state:"); 
state = scan.nextInt(); 

私がプログラムを実行すると、都市に入ると、ランタイムエラーが発生します。コンパイラは言う:

「java.util.InputMismatchException:(java.util.Scanner中) ヌル」結論として

、私が求めています最後の質問は、キーボードを使用して結果を読み込む方法です文字列クラスメソッドを使用して "NORTH CAROLINAlilesvilleNORTH CAROLINA"(EX)のようなものを印刷する方法について説明します。 申し訳ありませんが、私が述べたことであなたが混乱している場合、私は関係するすべての助けに感謝します。事前にどうもありがとうございました。

+1

'int'を' String'に変更します。あなたの 'Scanner'オブジェクトは整数を探していますが、文字列を与えています。 –

答えて

2

不正なデータ型を使用しているため、取得しているMisMatch例外があります。州と都市はintとして宣言されていますが、名前を入力しています。

intの代わりに、stateとcityをstringとして宣言し、scan.nextInt()の代わりにscan.nextLine()を使用します。

+0

申し訳ありません、それは意味があります。宣言した後に文字列を初期化するにはどうすればよいですか?都市と州を宣言するとき、私のコードはどのように見えるでしょうか?どのように結果を読み、どのキーボードクラスのメソッドを読みますか?あなたの助けをもう一度ありがとう。迅速な質問には申し訳ありません。 –

+0

実際には、私はそれをコンパイルするとうまくいきましたので、私は初期化する必要はないと思います。私は文字列クラスメソッドを使用してSTATEcitySTATEを返す方法を知りません。 –

関連する問題