私は初心者のJavaを学習しています。ユーザ入力時間を12時間に変換するプログラムを作成しようとしています。 12時間形式で提供され、24時間に変換されます。24時間から12時間までのクロック変換 - 中かっこのペア設定の問題
私は12時間から24時間形式に時間を変換するように修正するまで、私はそれを段階的にテストしたようにいくつかのコードを書いています。
私のコードは以下の通りです。私は冗長と非常に非効率なテクニックをお詫びしますが、ちょっと、私はどこかで始めなければなりません。私は入力が「m」で終わるかどうか(つまり入力時に12時間または24時間であるかどうか)をテストするためにプライマリif
ステートメントを作成しようとしているので、 if
,else
およびelse if
である。
import java.util.Scanner;
public class TimeConverter
{
public static void main (String [] args)
{
Scanner ask_user = new Scanner (System.in);
System.out.println("Enter a time ([h]h:mm [am|pm]): ");
String enter_time = ask_user.nextLine();
String am_pm = enter_time.substring(6);
String am = ("am");
String pm = ("pm");
if (enter_time.substring(7).equals("m"))
{
if (am_pm.equals(am))
{
String am_12 = enter_time.substring(0, 2);
String mins = enter_time.substring(2,5);
int am_12i = Integer.parseInt(am_12);
if (am_12i != 12)
{
String am_sub = enter_time.substring(0,5);
System.out.println(am_sub);
}
else if (am_12i == 12)
{
System.out.println("00" + mins);
}
}
else if (am_pm.equals(pm))
{
if (enter_time.equals("12:00 pm"))
{
System.out.println(enter_time);
}
else
{
String minutes = enter_time.substring(2,5);
String pm_add = enter_time.substring(0,2);
int pm_add_i = Integer.parseInt(pm_add);
int pm_add_fin = pm_add_i + 12;
String pm_add_finS = Integer.toString(pm_add_fin);
String converted_pmtime = (pm_add_finS + minutes);
System.out.println(converted_pmtime);
}
else if (enter_time.substring(7) != ("m"))
{
String 24hour = enter_time.substring(0,2);
String 12hourmins = enter_time.substring(2,7);
int 24hournum = Integer.parseint(24hour);
if (enter_time.equals("00:00"))
{
System.out.println("12" + 12hourmins);
}
else if (24hournum <= 11)
{
String hour = Integer.toString(24hournum);
String minute = enter_time.substring(2,4);
String fin = (hour + minute + "am");
}
}
}
}
コードをインデントする方法を学んでください。 **本当に**あなたを助けるでしょう – litelite
いくつかの中カッコがありません。変数名には数字を含めることはできません(24時間は無効な変数名です)。それらから始める。 –
==を使用して文字列を比較しないでください。 "else if(enter_time.substring(7)!=( "m")) "は実際には冗長ですが、あなたが主張するならば、!=を!equals –