尝试使用 printf 打印秒和分钟的 2 位数字,但我不断收到错误消息
Trying to print 2 digits for seconds and minutes using printf but I keep getting an error
我正在 java 制作一个时钟,我必须打印 2 位数字的分钟和 2 位数字的秒数。我正在使用 printf 尝试打印这两个值,但我不断收到一条错误消息,提示 "illegal statement" 或“; exprected”。我做错了什么?
以下是我尝试实现但迄今为止失败的代码。
public void printStandard() {
int hours;
if (hrs < 12) {
System.out.printf(hrs + ":" + mins + ":" + %2d + "AM", secs);
} else if (hrs > 12) {
hours=hrs-12;
System.out.printf(hours + ":" + mins + ":" + %2d+ "PM"), secs;
} else if (hrs == 12) {
System.out.printf(hrs + ":" + mins + ":" + %2d, secs + "PM");
}
}
格式在双引号内。而不是
System.out.printf(hrs + ":" + mins + ":" + %2d + "AM", secs)
我想你想要的是
System.out.printf("%02d:%02d:%02d AM%n", hrs, mins, secs);
此外,我认为您想将参数传递给您的方法。您可以使用常规 else
。像,
public void printStandard(int hrs, int mins, int secs) {
if (hrs < 12) {
System.out.printf("%02d:%02d:%02d AM%n", hrs, mins, secs);
} else {
System.out.printf("%02d:%02d:%02d PM%n", hrs - 12, mins, secs);
}
}
public void printStandard(int hrs, int mins, int secs) {
if (hrs < 12) {
System.out.printf("%02d:%02d:%02d AM%n", hrs, mins, secs);
} else {
System.out.printf("%02d:%02d:%02d PM%n", hrs - 12, mins, secs);
}
打印两位数字。
我正在 java 制作一个时钟,我必须打印 2 位数字的分钟和 2 位数字的秒数。我正在使用 printf 尝试打印这两个值,但我不断收到一条错误消息,提示 "illegal statement" 或“; exprected”。我做错了什么?
以下是我尝试实现但迄今为止失败的代码。
public void printStandard() {
int hours;
if (hrs < 12) {
System.out.printf(hrs + ":" + mins + ":" + %2d + "AM", secs);
} else if (hrs > 12) {
hours=hrs-12;
System.out.printf(hours + ":" + mins + ":" + %2d+ "PM"), secs;
} else if (hrs == 12) {
System.out.printf(hrs + ":" + mins + ":" + %2d, secs + "PM");
}
}
格式在双引号内。而不是
System.out.printf(hrs + ":" + mins + ":" + %2d + "AM", secs)
我想你想要的是
System.out.printf("%02d:%02d:%02d AM%n", hrs, mins, secs);
此外,我认为您想将参数传递给您的方法。您可以使用常规 else
。像,
public void printStandard(int hrs, int mins, int secs) {
if (hrs < 12) {
System.out.printf("%02d:%02d:%02d AM%n", hrs, mins, secs);
} else {
System.out.printf("%02d:%02d:%02d PM%n", hrs - 12, mins, secs);
}
}
public void printStandard(int hrs, int mins, int secs) {
if (hrs < 12) {
System.out.printf("%02d:%02d:%02d AM%n", hrs, mins, secs);
} else {
System.out.printf("%02d:%02d:%02d PM%n", hrs - 12, mins, secs);
}
打印两位数字。