Loading

System类_Calendar类_Date类_小记

PrintStream(字节打印流) ps = System.out ; 标准输出流
PrintWriter(字符打印流)
InputStream in = System.in; 标准输入流

常用的成员方法:
public static void gc()运行垃圾回收器。
调用 gc 方法暗示着 Java 虚拟机做了一些努力来回收未用对象,以便能够快速地重用这些对象当前占用的内存,最终调用的就是重写之后finalize()回收不用的对象!
public static void exit(int status)终止当前正在运行的 Java 虚拟机。非 0 的状态码表示异常终止,exit(0)表示退出JVM,可应用在while循环内来跳出循环。
public static long currentTimeMillis():返回当前的时间毫秒值,运行程序前后各加一个用来统计程序运行的耗费时间。

package Test_book;


/**
 * @author Aoman_Hao
 */
public class SystemTest1 {


    public static void main(String[] args) {
        String s1 = "TZRRY";
        //记录时间
        long t1 = System.currentTimeMillis();
        for( int i=1;i<100;i++){
            if(i==10){
                long t2 = System.currentTimeMillis();
                System.out.println("耗时:"+(t2-t1)+"毫秒");
                System.exit(0);
            }else{
                System.out.println("第"+i+"遍"+s1);
            }
        }

    }

}

输出:
第1遍TZRRY
第2遍TZRRY
第3遍TZRRY
第4遍TZRRY
第5遍TZRRY
第6遍TZRRY
第7遍TZRRY
第8遍TZRRY
第9遍TZRRY
耗时:16毫秒

public static void arraycopy(Object src,int srcPos,Object dest, int destPos,int length)指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束

例:
public static void main(String[] args) {
        //定义两数组,静态初始化
        int[] arr1 = {11,22,33,44,55,66} ;
        int[] arr2 = {3,4,5,6,7,8,9} ;

        //复制数组
        System.arraycopy(arr1, 2, arr2, 1, 2) ;

        //分别将arr1 和arr2数组以字符串形式显示出来
        System.out.println("arr1:"+Arrays.toString(arr1));
        System.out.println("arr2:"+Arrays.toString(arr2));
        /**
         输出 * arr1:[11, 22, 33, 44, 55, 66]
             * arr2:[3, 33, 44, 6, 7, 8, 9]
         */
    }

public static Calendar getInstance()创建日历对象
public int get(int field)返回给定日历字段的值
public static final int YEAR:表示日历中 的年
public static final int MONTH:月份:是0开始计算的
public static final int DATE:和DAY_OF_MONTH是同义词,表示月份中的某天

package Test_book;

import java.util.Calendar;

/**
 * @author Aoman_Hao
 */
public class CalendarTest {

    public static void main(String[] args) {
        //创建对象
        Calendar c1 = Calendar.getInstance();
        int y = c1.get(Calendar.YEAR);
        int m = c1.get(Calendar.MONTH);
        int d = c1.get(Calendar.DATE);
        //输出年月日
        System.out.println(y+"年"+(m+1)+"月"+d+"日");
        //月份是从0月开始算的,所以输出月份是要先加一,在输出。

        //对年月日添加偏移量
        c1.add(Calendar.YEAR, -1);
        //偏移量添加后需在抓取年份变量
        y = c1.get(Calendar.YEAR);
        System.out.println(y+"年");
    }

}
输出:
20171172016

Date类负责时间的表示,指从1970年到对应时间的毫秒数
public Date():表示分配的一个Date对象:无参: 通过无参构造获取当前系统的具体的时间
public Date(long date):指定一个时间毫秒值
public long getTime():获取当前时间毫秒值,如果知道Date对象,可以通过getTime()获取时间毫秒值

package Test_book;

import java.util.Date;

/**
 * @author Aoman_Hao
 */
public class DateTest {

    public static void main(String[] args) {
        Date date = new Date();
        System.out.println("日期"+date);
        //getTime获得当前时间的毫秒值
        System.out.println(date.getTime());
        //setTime设定当前毫秒值
        date.setTime(200);
        System.out.println(date.getTime());

    }

}
输出:
日期Tue Nov 07 21:09:10 CST 2017
1510060150780
200

Date对象—>String类型的日期的”文本格式”:格式化
public final String format(Date date)
转换中间量DateFormat 是日期/时间格式化子类的抽象类不能直接实例化
因此常用的构造方法:Date—格式化—>String文本格式
public SimpleDateFormat(String pattern)用给定的模式和默认语言环境的日期格式符号构造

String类型日期的”文本格式”—->Date日期对象:解析
public Date parse(String source)

日期和时间模式
y 年 比如:2017—->yyyy
M 年中的月份:2——>MM
d 月份中的天数 :—–>dd
H 小时 HH
m 小时中的分钟数 mm
s 分钟中的秒数 ss

package Test_book;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * @author Aoman_Hao
 */
public class DateTest2 {

    public static void main(String[] args) {
        //Date日期对象--->格式化---->String:日期文本格式
                //创建日期对象
                Date d = new Date() ;
                //创建中间变量SimpleDateFormat类对象,来格式化Date对象
                SimpleDateFormat simpleDateFormat = new SimpleDateFormat("MM/dd/yy");
                String datesdf = simpleDateFormat.format(d);
                System.out.println(datesdf);

    }
}
输出:11/07/17
package Test_book;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * @author Aoman_Hao
 */
public class DateTest3 {

    public static void main(String[] args) throws ParseException {
        //String日期"文本格式"----->解析----->Date对象
        //创建文本对象
        String s = "06/06/2016";

        //创建中间变量SimpleDateFormat类对象,来解析文本对象
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("MM/dd/yy");
        Date date = simpleDateFormat.parse(s);//抛出异常,解决就行
        System.out.println("date"+date);



    }

}
输出:dateMon Jun 06 00:00:00 CST 2016
(输出还是系统的默认时间格式)

Math
两个静态常数:
static double E
static double PI

常用的静态方法有:
abs()绝对值,可以是float,double,long或int 如果参数是byte或short类型,则会被强制转换为int类型
ceil() 向上取整,double型
floor() 向下取整,double型
max() 求最大值
min() 求最小值
random() [0.0,1.0)之间的随机数,double型
round() 四舍五入
sin() cos() tan()
sqrt() 平方根
pow(double a,double b) a的b次方

在面向对象中,类是抽象的而对象是具体的,数学本身也是抽象的而没法具体,所以这里只有一个数学类而不能实例化对象。
http://blog.csdn.net/tomorrowtodie/article/details/52590688

posted @ 2017-11-07 19:41  AomanHao  阅读(12)  评论(0)    收藏  举报