try {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter the continent;");
String CN = in.readLine();
String MaxDate="1";
for(Earthquakerecd e : eqList)
{
if(e.getContinent().equals("CN"))
{
MaxDate=e.getDate();
}
{
System.out.println(e.toString());
}
}
System.out.println(MaxDate);
}
catch (IOException e)
{
System.out.println("IOException has been caught");
}
これは簡単な問題です。この問題では、Maxdateは1と宣言されています.CNは大陸の文字列です。ユーザー入力が大陸に一致する場合、日付はe.getDate()からMaxdateに渡されます。いずれの場合でも、出力を1にするべきではありません。オブジェクトeからの日付でなければなりません。私は常にMaxdateに1を得ています。可能な解決策はありますか?私の構文は正しいのですか?オブジェクト文字列から文字列への値の受け渡し
if(e.getContinent().equals(CN))
を今あなたは文字列リテラル "CN" に対して比較している:
あなたはmaxDateの= e.getDate()のtoStringを試してみました()?私はJavaに精通していませんが、ショットの価値があります – ComputerSaysNo
オブジェクトeの日付属性は途中で文字列です –
なぜMaxDateは文字列ですか?同じクラスにするe.getDate()returns ...また、Javaの規則では、小文字の変数と大文字のクラスを開始することです。 – m0skit0