我们在使用QQ、微信等应用时,我们的手机会提示该消息时在过去的某个时间发送的,我们如何运用JAVA来实现这个功能呢?

代码如下:

public class Time {
public static void main(String[] args) throws ParseException {

SimpleDateFormat c = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

System.out.println("请输入日期:");//在这里输入时间
long time1 = System.currentTimeMillis();//当前时间的时间戳
Scanner time2 = new Scanner(System.in);//输入时间

//将输入的时间转为时间戳
Date sr = c.parse(time2.nextLine());
Calendar cal = Calendar.getInstance();
cal.setTime(sr);
long timestamp = cal.getTimeInMillis();

DateFormat gs = new SimpleDateFormat("yyyy年 MM月dd日 ");//输出的时间格式
long dv = time1 - timestamp;//时间戳差值
long aaaaa = time1-dv;//当前时间减去差值,得到时间
String rq = gs.format(new Date(Long.parseLong(String.valueOf(aaaaa))));//获取时间

long dw = 1000*60;//一分钟单位
long hh =dw*60;//一个小时的单位
long dd =hh*24;//一天的单位

if (dv<dw) {
long mmm=dv/1000;
System.out.printf("来自%d秒前的消息",mmm);
}else if( dv>dw&dv<hh ){
long fff=dv/dw;
System.out.printf("来自%d分钟前的消息",fff);
}else if(dv>hh&dv<dd) {
long xxx = dv/hh;
System.out.printf("来自%d小时前的消息",xxx);
}else if(dv>dd&dv<(dd*30)) {
long ttt= dv/dd;
System.out.printf("来自%d天前的消息",ttt);
}else if(dv>(dd*30)) {
System.out.println("来自" +rq+"的消息");
}
time2.close();
}
}

这里我输出的时候时根据时间的长短输出不同的方式。

java时间日期的运用的更多相关文章

  1. java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明)

    转载地址:http://www.devba.com/index.php/archives/4581.html java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明); ...

  2. (转)java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明)

    java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明);部分资料参考网络资源 1. java向MySQL插入当前时间的四种方式 第一种:将java.util.Date ...

  3. Java时间日期格式转换 转自:http://www.cnblogs.com/edwardlauxh/archive/2010/03/21/1918615.html

    Java时间格式转换大全 import java.text.*; import java.util.Calendar; public class VeDate { /** * 获取现在时间 * * @ ...

  4. Java 时间日期系列目录

    下面是Java的时间和日期相关文章目录: 01. Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(1) Calendar 02.  ...

  5. JAVA时间日期处理类,主要用来遍历两个日期之间的每一天。

    /** * * 文 件 名: AccountDate.java * * 创建时间: 2008-11-18 * * Email : **@163.com */ import java.text.Deci ...

  6. java时间日期类(Date、DateFormat、Calendar)学习

    1.Date类 常用方法:long getTime(),用于返回当前时刻的毫秒值 Date d = new Date(2000); System.out.println(d.getTime());// ...

  7. Java时间日期字符串格式转换大全

    import java.text.*; import java.util.Calendar; public class VeDate { /** * 获取现在时间 * * @return 返回时间类型 ...

  8. java 时间日期

    Java 日期时间 java.util 包提供了 Date 类来封装当前的日期和时间. Date 类提供两个构造函数来实例化 Date 对象. 第一个构造函数使用当前日期和时间来初始化对象. Date ...

  9. Java时间日期格式转换Date转String和String转Date

    Java时间格式转换大全 import java.text.*; import java.util.Calendar; public class VeDate { /** * 获取现在时间 * * @ ...

随机推荐

  1. 初始化vtable

    在InstanceKlass::link_class_impl()方法中完成方法连接后会继续初始化vtable与itable,之前已经介绍过vtable与itable,并且在类解析过程中已经完成了大小 ...

  2. 【POJ3071】Football - 状态压缩+期望 DP

    Description Consider a single-elimination football tournament involving 2n teams, denoted 1, 2, …, 2 ...

  3. 第三方登陆--QQ登陆--单体应用

    从零玩转第三方QQ登陆 下面有源码 前后端分离版本 一样的思路 https://www.cnblogs.com/Yangbuyi/p/13194007.html 第三方GITEE登陆 https:// ...

  4. 《Java从入门到失业》第二章:Java环境(四):IDE集成环境

    2.4IDE集成环境 在掌握了编写.编译和运行Java程序的基本步骤以后,你肯定就在想,这太麻烦了,有没有更好的工具?当然有了,那就是IDE.IDE就是专业的集成开发环境(Integrated Dev ...

  5. PAT 2-10. 海盗分赃(25)

    题目链接:http://www.patest.cn/contests/ds/2-10 解题思路:参考:http://blog.csdn.net/linsheng9731/article/details ...

  6. 10.oracle分页

    oracle的分页一共有三种方式 方法一 根据rowid来分 SELECT * FROM EMP WHERE ROWID IN (SELECT RID FROM (SELECT ROWNUM RN, ...

  7. golang []byte 和 string相互转换

    原文链接:golang []byte和string相互转换 测试例子 package main import ( "fmt" ) func main() { str2 := &qu ...

  8. failed to find romfile "vgabios-stdvga.bin"

    问题:failed to find romfile "vgabios-stdvga.bin" 解决: apt-get install vgabios ln -s /usr/shar ...

  9. CSS动画实例:小圆球的海洋

    CSS背景属性用于定义HTML元素的背景,在CSS提供的背景属性中, background-image:指定要使用的一个或多个背景图像: background-color:指定要使用的背景颜色: ba ...

  10. SPSSAU数据分析思维培养系列2:分析方法

    大家好!在上篇文章中,我们一起学习了如何掌握正确的数据处理思维(文章链接:https://www.cnblogs.com/spssau/p/12523530.html).在完成数据准备和清理工作后,就 ...