有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!


共 (4) 个答案

  1. # 1 楼答案

    System.out.println("05h23m45s".split("m")[1].toString().substring(0,2));
    
  2. # 2 楼答案

    String timeStr = "05h23m45s";
    
    int sec = Integer.parseInt(timeStr.substring(6,7));
    

    还有很多其他的方法

  3. # 3 楼答案

    如果这是您的时间格式,只需获取在m之后立即开始的子字符串(分钟)

    String time = "05h23m45s";
    String seconds = time.substring(time.lastIndexOf("m") + 1, time.lastIndexOf("s"));
    

    此代码将返回一个String,其中包含m之后和s之前的所有字符

    我强烈建议你阅读String class documentation。当正确使用时,它的噱头真的很有用

  4. # 4 楼答案

    更新

    如果您想要处理日期和时间的真正健壮的解决方案,您可以考虑使用^ a1}或其他Date包(^ {< CD1>})。

    String time = "05h23m45s";
    
    DateTimeFormatter dateFormatter = DateTimeFormat.forPattern("hh'h'mm'm'ss's'");
    DateTime parsed = dateFormatter.parseDateTime(time);
    int sec = parsed.getSecondOfMinute();
    

    原始答案:

    要获取秒数作为int值,请执行以下操作:

    String time = "05h23m45s";
    String strSeconds = time.substring(time.lastIndexOf("m") + 1, time.lastIndexOf("s"));
    int seconds = Integer.parseInt(strSeconds);
    System.out.println(seconds);
    

    打印出:

    45