Java日志第25天 2020.7.30
Calendar类
java.util.Calendar是一个日历类。
Calendar类是一个抽象类,它提供了YEAR, MONTH, DAY_OF_MONTH, HOUR等很多操作日历字段的方法。
Calendar类无法直接创建对象使用,里边有一个静态方法叫做getInstance(),该方法返回了Calendar类的子类对象。
static Calendar getInstance()
使用默认时区和语言环境获得一个日历
import java.util.Calendar; public class Demo01Calendar { public static void main(String[] args) { Calendar c = Calendar.getInstance(); System.out.println(c); } }
Calendar类常用的成员方法
1. public int get ( int field )
返回给定日历字段的值
import java.util.Calendar; public class Demo01Calendar { public static void main(String[] args) { Calendar c = Calendar.getInstance(); int year = c.get(Calendar.YEAR); System.out.println("year = "+ year); int month = c.get(Calendar.MONTH) + 1; System.out.println("month = " + month); int day = c.get(Calendar.DATE); System.out.println("day = "+ day); } }
2. public void set ( int field, int value )
将给定的日历字段设置为给定值
import java.util.Calendar; public class Demo01Calendar { public static void main(String[] args) { Calendar c = Calendar.getInstance(); //分别设置 c.set(Calendar.YEAR, 2021); c.set(Calendar.MONTH, 8); c.set(Calendar.DATE, 9); int year = c.get(Calendar.YEAR); System.out.println("year = "+ year); int month = c.get(Calendar.MONTH); System.out.println("month = " + month); int day = c.get(Calendar.DATE); System.out.println("day = "+ day); } }
import java.util.Calendar; public class Demo01Calendar { public static void main(String[] args) { Calendar c = Calendar.getInstance(); //重载设置 c.set(2021,8,9); int year = c.get(Calendar.YEAR); System.out.println("year = "+ year); int month = c.get(Calendar.MONTH); System.out.println("month = " + month); int day = c.get(Calendar.DATE); System.out.println("day = "+ day); } }
3. public abstract void add ( int field, int amount)
根据日历的规则,为给定的日历字段添加或减去指定的时间量
import java.util.Calendar; public class Demo01Calendar { public static void main(String[] args) { Calendar c = Calendar.getInstance(); /* public abstract void add ( int field, int amount) int field:日历字段 int amount:添加或减去时间量 正数:添加 负数:减去 */ c.add(Calendar.YEAR,-1); int year = c.get(Calendar.YEAR); System.out.println("year = "+ year); int month = c.get(Calendar.MONTH); System.out.println("month = " + month); int day = c.get(Calendar.DATE); System.out.println("day = "+ day); } }
4. public Date getTime ()
返回一个表示此Calendar时间值的Date对象
import java.util.Calendar; import java.util.Date; public class Demo01Calendar { public static void main(String[] args) { Calendar c = Calendar.getInstance(); Date date = c.getTime(); System.out.println(date); } }
System类
java.lang.System类中提供了大量静态方法,可以获取与系统相关的信息或系统级操作,在System类的API文档中,常用的方法有:
1. public static long currentTimeMills () 返回以毫秒为单位的当前时间
实例:循环9999次所需要的时间
public class currentTimeMills { public static void main(String[] args) { long start = System.currentTimeMillis(); for (int i = 1; i <= 9999; i++) { System.out.println(i); } long end = System.currentTimeMillis(); System.out.println("所需要的时间为"+(end - start)+"毫秒"); } }
2. public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
将数组中的指定数据拷贝到另一个数组中
参数:
src -源数组
srcPos -源数组中的起始位置(起始索引)
dest -目标数组
destPos -目标数据中的起始位置
length -要复制的数组元素的数量
import java.util.Arrays; public class arraycopy { public static void main(String[] args) { int[] src = {1, 2, 3, 4, 5}; int[] dest = {6,7, 8, 9, 10}; System.out.println("复制前:"); System.out.println("src:"+ Arrays.toString(src)); System.out.println("dest:"+ Arrays.toString(dest)); System.out.println("================"); //将src数组的前三个元素赋值到dest数组的前三个元素 System.arraycopy(src, 0, dest, 0, 3); System.out.println("复制后:"); System.out.println("src:"+ Arrays.toString(src)); System.out.println("dest:"+ Arrays.toString(dest)); } }
结果如下:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南