| 
 | 
 
 
发表于 2024-1-23 17:29:57
|
显示全部楼层
 
 
 
谢谢大鹅的干货 。 
MARK一下 
 private static final String _time = "yyyy-MM-dd HH-mm-ss"; 
    /** 一天的秒数 */ 
    private static final int _day = 24 * 60 * 60; 
 
 
    /** 
     * 秒数转换成 小时 + 分钟 + 秒 
     * 
     * @param seconds 秒 
     * @return x小时 x分钟 x秒 
     */ 
    public static String secondsToTime(int seconds) { 
        int h = seconds / 3600; // 小时 
        int m = (seconds % 3600) / 60; // 分钟 
        int s = (seconds % 3600) % 60; // 秒 
 
        String hh = h > 0 ? (h + "时") : ""; 
        String mm = m > 0 ? (m + "分") : ""; 
        String ss = s > 0 ? (s + "秒") : ""; 
 
        return hh + mm + ss; 
    } 
 
    /** 
     * 将数字以 x亿 x万 x 的形式显示<br> 
     * x 值为 0 时不显示 
     * @param num 数字 
     * @return x亿x万x 
     */ 
    public static String tenThousands(long num) { 
        int m = (int) (num / 100000000); // 亿 
        int t = (int) ((num % 100000000) / 10000); //万 
        int k = (int) (num % 10000); //千 
 
        String ms = m > 0 ? (m + "亿") : ""; 
        String ts = t > 0 ? (t + "万") : ""; 
        String ks = k > 0 ? (k + "") : ""; 
 
        return ms + ts + ks; 
    } 
 
    /** 
     * 指定日期开启距今时间<br> 
     * 可将时间设为指定 lastTime(String date) 类型随时调用 
     * @return 2023-04-07 19-00-00 
     * @throws ParseException throws 
     */ 
    public static String lastTime() throws ParseException { 
 
        String date = "2023-04-07 19-00-00"; 
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat(_time); //24小时制 
        long last = simpleDateFormat.parse(date).getTime(); 
        long now = System.currentTimeMillis(); 
 
        long lastTime = (now - last) / 1000L; // 秒数 
        String day = lastTime / _day + "天"; 
 
        return day + secondsToTime((int) (lastTime % _day)); 
    } 
复制代码 
很实用的东西,再附上debug参数,随时查看自己写的是不是想要的结果 
 
    public static void main(String[] args) throws ParseException { 
// double d = 12345.67890; // 这是写小数点保留所用的debug数据 
        int t = 25678; 
        int i = 2047073560; 
        System.out.println(secondsToTime(t)); 
        System.out.println(tenThousands(i)); 
        System.out.println(lastTime()); 
    } 
复制代码 
懂的自取,高手别吱声,不懂的绕道吧。 
 
顺便广告一下:圣子默默的个人空间_哔哩哔哩_bilibili 欢迎各位加入养老服,长期更新,技术有保障,不断更新更多有趣的玩法。 
 |   
 
 
 
 |