重複の可能性:
==を使用するステートメントが予期しない結果をもたらす場合
私は、コードで設定した時間とシステムのリアルタイムが等しい場合に何かを実行することを想定したJavaコードに取り組んでいます。時間が一致しない場合は、完全に無視されます。今、私は正しく時間を得ることができますが、何らかの理由で、ifステートメントはそうである場合でも等しくないと言っています。私が見逃している、または間違っていることはありますか?
Calendar now = new GregorianCalendar();
String am_pm;
int hour = now.get(Calendar.HOUR);
int minute = now.get(Calendar.MINUTE);
if (now.get(Calendar.AM_PM) == 0){
am_pm = "AM";
}
else{
am_pm = "PM";
}
String time = hour + ":" + minute + " " + am_pm;
String Scan_hour = "2:45 PM";
System.out.println(time + "--" + Scan_hour);
if (time == Scan_hour){
System.out.println("Time matchs");
}
else{
System.out.println("Time Doesn't Match");
}