zoukankan      html  css  js  c++  java
  • java基础之常用API

      常用API

    1. 在java中如何表示一个时间对象呢?
    需要使用到Date类,在java.util包下面;
    使用步骤:
    1> 导入包: import java.util.Date;
    2> 创建对象,使用构造方法
    public Date();// 创建一个默认的当前时间点的日期对象.
    public Date(long time);// 根据指定的毫秒值创建日期对象

    3> 使用成员方法:
    public void setTime(long time);// 为当前日期设置毫秒值
    public long getTime();// 获取日期对象的毫秒值

    注意点:
    1> Date类对象进行输出的时候,显示的不是地址值,说明已经覆盖了toString方法
    2> 中国属于世界的东八区,默认的时间是: 1970年1月1日8:00
    3> 世界的默认时间是格林尼治时间(英国南郊): 1970年1月1日0:00

    2. 如何直接使用Date日期来表示时间,默认的时间,可读性不好,可是使用DateFormat来进行格式化.
    DateFormat: 表示时间格式化的类, 在java.text包下面;
    由于DateFormat是一个抽象类,不能直接创建对象, 所以需要使用到子类: SimpleDateFormat;

    使用步骤:
    1> 导入包: import java.text.SimpleDateFormat; /DateFormat
    2> 创建对象,使用构造方法:
    public SimpleDateFormat(String pattern);
    pattern: 可以传入指定的格式: "yyyy年MM月dd日 HH时mm分ss秒";
    3> 使用成员方法
    public String format(Date date);// 将日期对象转成字符串
    public Date parse(String strTime);// 将字符串转成日期对象

    3. 如果使用Date没有办法很好的表示,今天是今年的多少天,本周是今年的多少周...等等信息
    如果需要表示的更加丰富,可以使用Calendar, 在java.util包下面;
    Calendar类: 表示日历对象的一个类,是一个抽象类没有办法创建对象,需要用到子类,在java.util.Calendar;

    使用步骤:
    1> 导入包: import java.util.Calendar;
    2> 创建对象,使用构造方法
    由于Calendar是抽象类,可以使用子类: GregorianCalendar
    3> 使用成员方法;
    public static Calendar getInstance();// 静态方法,也可以获取一个日历对象(推荐使用)
    public Date getTime();// 获取日期对象
    public int get(int field);// field指的是字段信息(在Calendar中的字段(静态成员变量)里面)
    public void set(int field, int value);// 设置某一个字段为具体的值
    public void set(int year, int month, int day);// 设置具体的年月日
    public void add(int field, int amout);// 将某个字段对应的日期移动(增加或者减少)

    注意:
    获取月份表示范围是[0,11]表示[1,12]月份

    4. System: 表示和系统相关的属性类,比如: 获取JDK的路径, 获取系统用户名,获取JDK的供应商等等...;

    使用步骤:
    1.由于System在java.lang包下面所以使用不需要导入包
    2.创建对象,由于System的构造方法都被私有化了,所以不能创建对象
    3.使用成员变量(字段),或者成员方法都是静态的内容;

    常用的静态字段:
    System.in 标准的输入(标注的字节输入流);
    System.out 标准的输出
    System.err 用来输出错误或者异常信息,以红色字体展示, 快捷键: syse alt + / 回车

    静态成员方法:
    public static void exit(int status);// 退出JVM虚拟机,0表示正常退出,非0异常退出
    public static long currentTimeMillis();// 获取当前运行在这一行的毫秒值
    public static void gc();// 建议JVM去做垃圾回收,不一定会回收.
    public static String getProperty(String key);// 获取指定的相关系统属性.
    key: 查API中System,先找到getProperties,通过这个方法可以找到所有的key

    5. Math: 可以用来表示复杂的数学运算相关的类,在java.lang包下面

    Math的使用步骤:
    1. 导入包, 因为在lang包下所以不需要导入包
    2. 创建对象, Math的构造方法都是私有的,所以不能创建对象
    3. 使用静态成员变量,静态成员方法

    静态的成员变量:
    Math.PI 表示一个π

    静态的成员方法:
    1> public static double abs(double a);// 返回double类型的绝对值
    2> public static double ceil(double a);// 向上取整,以double类型返回
    3> public static double floor(double a);// 向下取整,以double类型返回
    4> Public static double min(double a, double b);// 获取两个数的较小值
    5> public static double max(double a, double b);// 获取两个数的较大值
    6> public static double pow(double a, double b);// 返回a的b次方
    7> public static double random();// 返回带正好的double值,该值大于等于0.0且小于1.0
    8> public static long round(double a);// 返回a的四舍五入的值

    6. 如果直接操作基本数据类型,方式有限,只能进行基本的数学运算, 如果变成包装类之后,可以使用类中的方法,进行更加复杂的操作
    比如: 可以将对应的数据存储到集合, 比如可以进行进制的转换;
    如何将一个基本数据类型变成包装类,对应的类型有哪些?
    基本数据类型 包装类类型(都在java.lang包下,全部都能直接使用)
    byte Byte
    short Short
    int Integer(特殊)
    long Long
    float Float
    double Double
    char Character(特殊)
    boolean Boolean
    * 自动装箱: 将基本数据类型自动封装引用数据类型
    * 自动拆箱: 将引用数据类型拆箱成基本数据类型

    一个数字字符串如何和一个基本数据类型之间进行相互转换?
    字符串转成基本数据类型:
    方式:
    int num = Integer.parseInt(String str);
    基本类型 变量名 = 包装类型.parseXxx(String str);// 和上面同理


    基本数据类型转成字符串:
    方式一: 基本数据类型 + "" ;// 推荐使用
    扩展方式:
    方式二: Integer的方法, Integer.toString(int num);
    方式三(补充): String的方法, String.valueOf(int num);

    注意:
    只有数字类型对应的字符串,才能够转成对应基本数据类型


    7. 什么是正则表达式呢? 就是一个特殊的字符串, 用来匹配给定的字符串是否满足这个特殊的规则;
    和正则表达式相关的方法(String类的方法):
    1. public String[] split(String regex);
    2. public boolean matches(String regex);

    在正则表达式中英文句点(.), 有特殊含义,如果匹配需要使用 \.
    杠()在正则表达式中也有特殊含义表示,转移字符,用需要打印出 \, 需要写上: \
    加号(+), 字符+, 表示这个字符出现了一次或者多次

    * String的方法;
    * public boolean matches(String regex);// 使用regex规则来检查调用的字符串是否满足这个规则.

    * 匹配邮箱:
    * 特点:
    * xxx@xx.xx.xxx
    * hello@qq.com.cn
    * 1. @符号前面必须要有内容
    * 2. @后面也有内容
    * 3. 必须要有一个点. 可以有两个点

    * 匹配手机号:
    * 特点:
    * 1. 纯数字
    * 2. 第一位必须是1
    * 3. 第二位可以是: 3, 5, 7, 8
    * 4. 共有11位

    * 匹配一个qq号:
    * 特点:
    * 1. 是一个纯数字
    * 2. 开头不能是0
    * 3. qq号的位数是 5到12位

    正则表达式: http://114.xixik.com/regex/

    HTML转义字符: http://114.xixik.com/character/

  • 相关阅读:
    Linux ACL 权限之进阶篇
    Linux umask
    Linux 特殊权限 SUID,SGID,SBIT
    隔离 docker 容器中的用户
    理解 docker 容器中的 uid 和 gid
    Linux ugo 权限
    Dockerfile 中的 COPY 与 ADD 命令
    2013年全年总结
    参加2013中国大数据技术大会(BDTC2013)
    读书笔记2013第18本:《像外行一样思考,像专家一样实践》
  • 原文地址:https://www.cnblogs.com/youyouxiaosheng-lh/p/8136684.html
Copyright © 2011-2022 走看看