android开发中即时聊天软件中时间的获得

`

/**
     * 根据long类型的时间戳,转换为一个String类型的描述性时间
     * 通话记录如果发生在今天:“15:30”
     * 发生在昨天:“昨天8:23”
     * 发生在前天:“前天4:56”
     * 更早:     “2016/04/15”
     * @param timeStample
     * @return
     */
      //timeStample是聊天记录发生的时间
    public static String getTime(long timeStample) {
        //得到现在的时间戳
        long now=System.currentTimeMillis();
        //在java中,int类型的数进行除法运算,只能的整数,正是利用这一点,
        //在下列日期中,只要没过昨天24点,无论相差了1s还是23小时,除法得到的结果都是前一天,
        int day=(int) (now/1000/60/60/60-timeStample/1000/60/60/60);        
        switch (day) {
        //如果是0这则说明是今天,显示时间
        case 0:SimpleDateFormat sdf=new SimpleDateFormat("HH:mm");
        return sdf.format(timeStample);
        //如果是1说明是昨天,显示昨天+时间
        case 1:SimpleDateFormat sdf1=new SimpleDateFormat("HH:mm");
        return "昨天"+sdf1.format(timeStample);
        //如果是1说明是前天,显示前天+时间
        case 2:SimpleDateFormat sdf2=new SimpleDateFormat("HH:mm");
        return  "前天"+sdf2.format(timeStample);
        //结果大于2就只显示年月日
        default:SimpleDateFormat sdf3=new SimpleDateFormat("yyyy:MM:dd");
        return sdf3.format(timeStample);

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值