返回

java 时间获得正确结果的问题

发布时间:2022-09-06 17:54:15 231
# php

因此,我在获取这个java问题的正确输出时遇到了一个问题。

public class GetTime {
  /**/
  public static void main ( String [] arg ) {
    /**/
    int option;
    Time t;
    /**/
    System.out.println();
    option=option();
    /**/
    if ( option == 1 ) t=new Time();
    else               t=new Time12();
    /**/
    System.out.println();
    System.out.println(t);
    /**/
    return;
  }
  /**/
  private static int option () {
    /**/
    int rv;
    ConsoleInput ci;
    /**/
    ci=new ConsoleInput();
    System.out.println("    Enter option:");
    System.out.println("1 = 24-hour clock");
    System.out.println("2 = 12-hour clock");
    while ( true ) {
      rv=ci.readInt("       option = ? ");
      if ( ( rv == 1 ) || ( rv == 2 ) ) break;
    }
    ci.close();
    /**/
    return rv;
  }
}

这种编码只是运行文件。当我选择选项1时,结果是24小时格式的当前时间。当我选择选项2时,结果是12小时格式的当前时间。

    import java.util.Calendar;
/**/
public class Time {
  /**/
  private int hour, minute, second;
  /**/
  public Time () {
    init();
  }
  /*
   *  0, 1, ... , 23
   */
  public int getHour () {
    return hour;
  }
  /**/
  public int getMinute () {
    return minute;
  }
  /**/
  public int getSecond () {
    return second;
  }
  /**/
  public String toString () {
    return i2s(hour) + ":" + i2s(minute) + ":" + i2s(second);
  }
  /*
   *  i =      0 ,   1 , ... ,  59
   *  return "00", "01", ... , "59"
   */
  public static String i2s ( int i ) {
    return String.format("%02d",i);
  }
  /**/
  private void init () {
    /**/
    Calendar c;
    /**/
    c=Calendar.getInstance();
    hour=c.get(Calendar.HOUR_OF_DAY);
    minute=c.get(Calendar.MINUTE);
    second=c.get(Calendar.SECOND);
    /**/
    return;
  }
}

我有一个扩展了我的编码的文件。

pubic class Time12 extends Time {
  public Time12 () {
    super();
}
@Override
pubic String toString () {
  int h12, h24;
  h24=getHour();
  if ( h24 == 12 ) h12=0;
  else              h12=h24;
  return Time.i2s(h12) + ":" + Time.i2s(getMinute()) + ":" + Time.i2s(getSecond());
}

基本上,我的问题是,我必须同时使用24小时和12小时的时钟来运行它。代码已经自动使用了24小时时钟,我只需要做一个12小时的时钟。当我尝试使用选项1和2运行它时,它们只使用24小时时钟运行。

我要再声明一次吗?我是否要将else语句更改为其他语句?

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
下一篇
Django OAuth工具包示例不起作用 2022-09-06 16:50:38