Java 发表 时间间隔

 1 package com.tem1.util;
 2
 3 import java.text.ParsePosition;
 4 import java.text.SimpleDateFormat;
 5 import java.util.Date;
 6
 7 public class IntervalUtil {
 8
 9     public String getInterval(String createtime) { // 传入的时间格式必须类似于2012-8-21 17:53:20这样的格式
10         String interval = null;
11
12         SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
13         ParsePosition pos = new ParsePosition(0);
14         Date d1 = (Date) sd.parse(createtime, pos);
15
16         // 用现在距离1970年的时间间隔new
17         // Date().getTime()减去以前的时间距离1970年的时间间隔d1.getTime()得出的就是以前的时间与现在时间的时间间隔
18         long time = new Date().getTime() - d1.getTime();// 得出的时间间隔是毫秒
19
20         if (time / 1000 < 10 && time / 1000 >= 0) {
21             // 如果时间间隔小于10秒则显示“刚刚”time/10得出的时间间隔的单位是秒[0秒,10秒)
22             interval = "刚刚";
23
24         } else if (time / 1000 < 60 && time / 1000 >=10) {
25             // 如果时间间隔小于60秒则显示多少秒前  [10秒-60秒)
26             int se = (int) ((time % 60000) / 1000);
27             interval = se + "秒前";
28
29         }else if (time / 60000 < 60 && time / 60000 >=1) {
30             // 如果时间间隔小于60分钟则显示多少分钟前  [1分钟,60分钟)
31             int m = (int) ((time % 3600000) / 60000);// 得出的时间间隔的单位是分钟
32             interval = m + "分钟前";
33
34         }
35         else if (time / 3600000 < 24 && time / 3600000 >= 1) {
36             // 如果时间间隔小于24小时则显示多少小时前 [1小时,24小时)
37             int h = (int) (time / 3600000);// 得出的时间间隔的单位是小时
38             interval = h + "小时前";
39
40         }  else {
41             // 大于24小时,则显示正常的时间,但是不显示秒
42             SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
43
44             ParsePosition pos2 = new ParsePosition(0);
45             Date d2 = (Date) sdf.parse(createtime, pos2);
46
47             interval = sdf.format(d2);
48         }
49         return interval;
50
51     }
52
53     public static void main(String[] args) {
54         IntervalUtil interval = new IntervalUtil();
55         String date1 = "2014-10-11 10:56:17";
56         String date2 = "2014-10-10 09:39:17";
57         String date3 = "2014-10-11 05:49:17";
58         String date4 = "2014-10-11 10:01:11";
59         System.out.println(interval.getInterval(date1));
60         System.out.println(interval.getInterval(date2));
61         System.out.println(interval.getInterval(date3));
62         System.out.println(interval.getInterval(date4));
63
64     }
65 }

时间: 2024-10-10 09:08:00

Java 发表 时间间隔的相关文章

java之进制转换

[转载]晨风?0?5?0?2?0?1?6?6 2014年03月08日 于 爱Java 发表 众所周知.程序世界计算机中采用的是二进制,一个数字可以用任意进制表示.所以看一个数据值的同时.还要观察它的进制.以免造成笑话. 此时.进制之间的转换我也必然需要熟知.做到心中有数.下面就进制转换为大家提供几点参考. 分析: Java中在声明数字时默认采用的是十进制,可以在数字前加上符号表示数字采用八进制[前面加0(零)]或者十六进制[前面加上0x(零x)]. Java的整型封装类Integer和Long提

discuz2.5变量大全

<?php   /** * [Discuz!] (C)2001-2099 Comsenz Inc. * This is NOT a freeware, use is subject to license terms * * $Id: lang_admincp.php 31458 2012-08-30 03:39:40Z zhengqingpeng $ */   if(!defined('IN_DISCUZ')) { exit('Access Denied'); }     $lang = arr

Apache curator-client详解

Apache curator框架中curator-client组件可以作为zookeeper client来使用,它提供了zk实例创建/重连机制等,简单便捷.不过直接使用curator-client并不能减少太多的开发量,因为它相对比较底层,稍后我们继续了解curator-framework组件提供的更多的便捷特性. 一.核心API 1. CuratorZookeeperClient类: zookeeper客户端,根据指定的配置信息创建zookeeper实例. 2. RetryPolicy接口:

论坛如何防灌水垃圾帖?

如何控制论坛垃圾贴和一些恶意灌水帖子,永远都是站长们最最关心的问题.尤其是一些新手站长,对论坛的管理缺乏建议,常常受到垃圾帖肆掠,灌水无意义帖子横飞,这严重影响正常访问用户体验.小编结合自己的工作经验和一些老站长们的建议,整理出本文,告诉大家如何防灌水垃圾帖设置,防灌水垃圾帖,希望能对刚刚接触discuz! X2.5的站长们提供一些帮助. 防灌水垃圾帖设置下面说明的重点地方. 一.注册于访问控制 操作:Discuz!X2.5管理后台->全局->注册与访问控制 会员注册策略设置: 新用户注册验证

Java时间间隔问题在Android中的使用

转载请注明出处:http://www.cnblogs.com/cnwutianhao/p/6606720.html 假设我们在做项目的时候,获取到了一段音频,也知道音频长度,那么我们想对音频做一些处理的时候,在这个处理动作之前往往要做时间循环判断 已知:音频长度,并且还给出下面四个条件重试时间长度 = 音频长度 × 0.7 + 30秒第一次重试: 重试时间长度 x 0.15第二次重试: 重试时间长度 x 0.5第三次重试: 重试时间长度 x 1 上述的已知条件我们可以用下面这两段代码来实现: p

java快速开发平台可视化开发表单

XJR java快速开发平台,简单的理解就是:开发人员以某种编程语言或者某几种编程语言(比如:目前流行的多种web技术,包括springboot, JPA,Druid, Activiti,Lombok,swagger,poi,WebSocket,Jquery,BootStrap, maven,Jenkins 等等 )为基础,将各种需要的功能封装在不同的层中,具大家调用而开发出来的一个软件. 这个软件其实不是一个最终的软件产品,它是一个二次开发软件框架,用户可以在这个产品上进行各种各样的软件产品的

一个简单的通讯服务框架(大家发表意见一起研究)JAVA版本

最近研究下java语言,根据一般使用的情况,写了个连接通讯服务的框架: 框架结构 C-Manager-S; 把所有通讯内容抽取成三个方法接口:GetData,SetData,带返还的Get; 所有数据都处理为byte[];客户端与服务端和管理器以及服务端有多重处理模式 管理信息: 1.不需要中心管理器:服务端启动时向客户端广播自己绑定的地址:接收数据:客户端使用时广播一次请求,向所有服务端获取服务信息: 2.管理中心:客户端向管理器请求服务信息:服务端向管理器注册地址:根据需要,可以把客户端传递

Java集合类操作优化经验总结(原文已发表于IBM Developworks)

打个广告:<大话Java性能优化>已经在亚马逊.京东.淘宝.当当有售,<动手学习Apache ZooKeeper>预计下半年面世,谢谢对软件工匠.推广技术梦想的支持. 在实际的项目开发中会有很多的对象,如何高效.方便地管理对象,成为影响程序性能与可维护性的重要环节.Java 提供了集合框架来解决此类问题,线性表.链表.哈希表等是常用的数据结构,在进行 Java 开发时,JDK 已经为我们提供了一系列相应的类来实现基本的数据结构,所有类都在 java.util 这个包里,清单 1 描

推荐一款可视化开发表单的java快速开发平台

有时候我们会遇到这样的需求,公司不大,但是信息化程度也蛮高,公司的员工素质也很高,管理也很规范,甚至还有外地分公司,直接上一个OA系统吧,往往也无法符合公司的灵活管理需求,往往受制于商品化OA的功能限制,商业限制.直接定制一个OA系统也不大愿意承受几十万的开发费用,同时也不知道都提什么需求比较好,也不想去惹麻烦, 也没精力去整理需求. 这里不得不提到现在流行的快速开发平台,价格不高,可扩展强.平台可以搭建OA.ERP.CRM多种企业系统. 快速开发平台,简单的理解就是:开发人员以某种编程语言或者