Java获取当前时间

 

有两种方法:

方法一:用java.util.Date类来实现,并结合java.text.DateFormat类来实现时间的格式化,看下面代码:

import java.util.*;
import java.text.*;
//以下默认时间日期显示方式都是汉语语言方式
//一般语言就默认汉语就可以了,时间日期的格式默认为MEDIUM风格,比如:2008-6-16 20:54:53
//以下显示的日期时间都是再Date类的基础上的来的,还可以利用Calendar类来实现见类TestDate2.java
public class TestDate {
   public static void main(String[] args) {
      Date now = new Date();
      Calendar cal = Calendar.getInstance();
     
      DateFormat d1 = DateFormat.getDateInstance(); //默认语言(汉语)下的默认风格(MEDIUM风格,比如:2008-6-16 20:54:53)
      String str1 = d1.format(now);
      DateFormat d2 = DateFormat.getDateTimeInstance();
      String str2 = d2.format(now);
      DateFormat d3 = DateFormat.getTimeInstance();
      String str3 = d3.format(now);
      DateFormat d4 = DateFormat.getInstance(); //使用SHORT风格显示日期和时间
      String str4 = d4.format(now);

      DateFormat d5 = DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL); //显示日期,周,时间(精确到秒)
      String str5 = d5.format(now);
      DateFormat d6 = DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG); //显示日期。时间(精确到秒)
      String str6 = d6.format(now);
      DateFormat d7 = DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT); //显示日期,时间(精确到分)
      String str7 = d7.format(now);
      DateFormat d8 = DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.MEDIUM); //显示日期,时间(精确到分)
      String str8 = d8.format(now);//与SHORT风格相比,这种方式最好用

 


     
      System.out.println("用Date方式显示时间: " + now);//此方法显示的结果和Calendar.getInstance().getTime()一样
     
     
      System.out.println("用DateFormat.getDateInstance()格式化时间后为:" + str1);
      System.out.println("用DateFormat.getDateTimeInstance()格式化时间后为:" + str2);
      System.out.println("用DateFormat.getTimeInstance()格式化时间后为:" + str3);
      System.out.println("用DateFormat.getInstance()格式化时间后为:" + str4);
     
      System.out.println("用DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL)格式化时间后为:" + str5);
      System.out.println("用DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG)格式化时间后为:" + str6);
      System.out.println("用DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT)格式化时间后为:" + str7);
      System.out.println("用DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.MEDIUM)格式化时间后为:" + str8);
   }

}

运行结果:

用Date方式显示时间: Mon Jun 16 20:54:53 CST 2008
用DateFormat.getDateInstance()格式化时间后为:2008-6-16
用DateFormat.getDateTimeInstance()格式化时间后为:2008-6-16 20:54:53
用DateFormat.getTimeInstance()格式化时间后为:20:54:53
用DateFormat.getInstance()格式化时间后为:08-6-16 下午8:54
用DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL)格式化时间后为
:2008年6月16日 星期一 下午08时54分53秒 CST
用DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG)格式化时间后为
:2008年6月16日 下午08时54分53秒
用DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT)格式化时间后
为:08-6-16 下午8:54
用DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.MEDIUM)格式化时间
后为:2008-6-16 20:54:53

 

方法二:用java.util.Calendar类来实现,看下面:

import java.util.*;
import java.text.*;
//以下是利用Calendar类来实现日期时间的,和Date类相比较比较简单

public class TestDate2 {
   public static void main(String[] args) {
     
      Calendar ca = Calendar.getInstance();
      int year = ca.get(Calendar.YEAR);//获取年份
      int month=ca.get(Calendar.MONTH);//获取月份
      int day=ca.get(Calendar.DATE);//获取日
      int minute=ca.get(Calendar.MINUTE);//分
      int hour=ca.get(Calendar.HOUR);//小时
      int second=ca.get(Calendar.SECOND);//秒
      int WeekOfYear = ca.get(Calendar.DAY_OF_WEEK);
      
      
      System.out.println("用Calendar.getInstance().getTime()方式显示时间: " + ca.getTime());
      System.out.println("用Calendar获得日期是:" + year +"年"+ month +"月"+ day + "日");
      
      System.out.println("用Calendar获得时间是:" + hour +"时"+ minute +"分"+ second +"秒");
      System.out.println(WeekOfYear);//显示今天是一周的第几天(我做的这个例子正好是周二,故结果显示2,如果你再周6运行,那么显示6)
      
   }

}
运行结果是:
用Calendar.getInstance().getTime()方式显示时间: Mon Jun 16 21:54:21 CST 2008
用Calendar获得日期是:2008年5月16日
用Calendar获得时间是:9时54分21秒
2


总结:中的来说,方法二是最方便的,方法一显得分笨拙,不过看个人喜欢了。

还有一种方法利用System.currentTimeMillis()也可以的,下次再总结这种方法。

以图搜图终极版是一款在本地硬盘进行“以图搜图”的检索工具,支持对大量图片进行批量索引,根据图像哈希进行快速相似度搜索。针对 GIF 图片进行逐帧分析,提供旋转/翻转匹配选项,适合在素材管理、图库整理、重复图清理等场景下高效查找可替代或相似的图片。【核心特点】- 本地索引:可选多个文件夹进行批量索引,显示索引总数与进度。- 相似检索:支持静态图与 GIF,输出相似度及路径等信息。- 旋转/翻转匹配:可选“查找已旋转/已翻转”,提升匹配覆盖面。- 便捷交互:拖拽图片到窗口即可搜索,展示耗时、结果预览等。- 轻量发布:自包含 Win64 版本,无需安装 .NET 运行时即可使用。【适用场景】- 设计师/运营:快速定位相似素材、查找替代图。- 摄影师/图库整理:清理重复图片、按相似度归档。- 表情包爱好者:按图搜图,找到更多相似表情包。- 档案/运维:对海量图片进行检索与去重。【使用方法】1. 启动:双击“以图搜图终极版.exe”。2. 索引: - 在“索引配置”中选择一个或多个图片文件夹。 - 点击“更新索引”,等待进度完成(查看右上角索引总数)。3. 搜索: - 点击“选择图片”或把图片拖入窗口。 - 可勾选“查找已旋转/已翻转”以增强匹配效果。 - 查看搜索结果列表,双击可打开资源管理器定位文件。4. 预览与信息: - 右侧显示匹配图片预览及基础信息,底部显示耗时与提示。【注意事项】- 首次建立索引耗时较长,建议在空闲时间执行;后续更新索引仅处理新增/变化文件。- 开启 GIF 逐帧分析与“查找已旋转/已翻转”会增加耗时,按需使用。- 不建议将系统盘根目录或体量特别大且无图片的目录加入索引。-
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值