JAVA学习——JAVA常用类


本周我大致学习了JAVA的几个常用的类(包装类,Date类,DateFormat类,SimpleDateFormat类,Calendar类,GregorianCalendar类以及File类)*

包装类Intger(其中包括自动装箱和拆箱)

作用:

包装类即把基本类型(比如int,byte,char等)转化为对象类型.

为什么要用到包装类?

因为像ArrayList这样的集合不能存储基本类型只能存储对象类型,为了方便对这些集合的使用,才有了包装类将基本类型包装成对象类型。

自动装箱和拆箱

所谓自动装箱和拆箱就是系统帮我们自动改进代码,例如

Integer i=new Integer(1000);
//之前版本的编译器写法
Integer i=1000;//此时编译器自动帮助改进代码,i为一个对象
int c=i;//此时为拆箱,编译器自动帮你改进代码:i.int value()

Date类

时间处理相关类视图:
在这里插入图片描述
从上面图中可以看出,时间处理类核心类:java.util.Date

  • JAVA提供了Date类来处理日期,时间(此处所说的Date类是java.util包下的类,而不是java.sql下的包)。Date类历史悠久,因为其历史的悠久,Date类里面的一些构造器,方法已经Deprecated。关于日期的计算最好用Calendar类。
  • 标准纪元1970.1.10点开始到某个时刻的毫秒数,类型是long

Date类里面的一些用法

  • Date():生成一个代表当前日期时间的Date对象。该方法在底层调用System.currentTimeMillis()获得long整数作为日期参数。
    • Date(long date):根据指定的long型整数来生成一个Date对象。该构造器的参数表示创建的Date对象和GMT 1970年1月1日00:00:00之间时间差,以毫秒作为计时单位。
    • equal(Object obj):用来判断两个时间是否相等,相等则返回true。
Date d=new Date();
System.out.println(d);

显示结果为:Thu Apr 18 19:30:39 CST 2019

DateFormat类和DateSimpleFormat类

SimpleDateFormat类的继承关系:

  • java.lang.Object
    • java.text.Format
      • java.text.DateFormat
        • java.text.SimpleDateFormat

有关DateFormat中Format()的用法:

DateFormat d=new SimpleFormat("yyyy-MM-dd");//格式化字符串需与待转化的字符串格式保持一致
Date d1=new Date(1555313910390L);
String str=d.format(d1); //将时间对象按照格式化字符串,转化成字符串

有关DateFormat中parse()的用法:

String str1="2019-04-15";
 	DateFormat d2=new SimpleDateFormat("yyyy-MM-dd");
 	/* 捕获异常 */
 	try {
 		Date d3=d2.parse(str1); //将字符串转化为时间对象
 		System.out.println(d3);
 	} catch (ParseException e) {
 		e.printStackTrace();
 	}

Calendar(主要用来对时间分量进行计算) 类和GregorianCalendar类

GregorianCalendar类的继承关系

  • java.lang.Object
    • java.text.Calendar
      • java.text.GregorianCalendar
        • java.text.BuddhistCalendar

有关Calendar 中的set()的用法:

在set()方法中可以设置日期,比如年月日等。

Calendar d=new GregorianCalendar();
  //d.set(2019, 03, 15, 16, 23);
  d.set(Calendar.YEAR,2018);
  d.set(Calendar.MONTH,3);//在中国代表四月
  d.set(Calendar.DATE, 15);

有关Calendar 中的add()的用法:

在add()方法中主要实现对日期的增加,如:

d.add(Calendar.YEAR, -10);

有关Calendar 与Date()的转换:

Calendar d=new GregorianCalendar();
  //d.set(2019, 03, 15, 16, 23);
  d.set(Calendar.YEAR,2018);
  d.set(Calendar.MONTH,3);//在中国代表四月
  d.set(Calendar.DATE, 15);
  Date c=d.getTime();//将Calendar转换为Date
  Date d=new Date();
  c.setTime(date);//将Date转换为Calendar

File类

实例:

package com.File;

import java.io.File;

public class TestFile {
   public static void main(String[] args) {
   	File f=new File("d:/WANG");
   	printFile(f,0);
   	f.mkdirs();//没有这些目录时自动给你添加
   	f.mkdir();		//没有这些目录时则无法生成
   	//File f1=new File(f,"test.java");
   	//f1.createNewFile();//创建一个新的文件
   	//f1.delete();//删除
   }
   static void printFile(File file,int level) {
   	for(int i=0;i<level;i++) {
   		System.out.println("-");
   	}
   	System.out.println(file.getName());
   	if(file.isDirectory()) {//如果是目录则检查是否有子目录,如果是文件则结束
   		File[] files=file.listFiles();//把子目录全部列举出来
   		for(File temp:files) {//遍历目每一层录
   			printFile(temp,level+1);
   		}
   	}
   
   		}
   }

本人是JAVA初学者,如有错误请大家指出,谢谢!

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值