Java常用类库

Java常用类库


思维导图






1、Object类

Object类是所有类直接或间接父类。

方法:                         

toString():以字符串形式返回对象的文本信息;

hashCode():返回该对象的哈希值;

getClass():返回对象的类类型;

equals(Object obj):比较两个对象是否相等

2、包装类

2.1 装箱与拆箱

实例:

byte b = 1;//基本数据类型

System.out.println(b+1);

Byte b2 = new Byte(b);//包装类的对象

System.out.println(b2);

Byte b3 = b;//自动装箱,把基本数据类型转为对象

System.out.println(b3+5);

byte b4 = new Byte(b);//自动拆箱,把对象转为基本数据类型

System.out.println(b4+7);

2.2 Number类的常用方法

1.  构造方法;

2.  valueOf();

3.  toString();

2.3 Character 常用方法

1.  valueOf();

2.  toString();

3.  isDigit():判断是否为数字

4.  isLetter():判断是否为字母

5.  isUpperCase():判断是否为大写字母

6.  isLowerCase():判断是否为小写字母

7.  isWhitespace():判断是否为空格

8.  toUpperCase():转为大写字母

9.  toLowerCase():转为小写字母

3、字符串操作

3.1 String类

String字符串的值不可更改。

常用方法:

1.  charAt(int  i):返回指定索引处的字符;

2.  length():返回字符串的长度;

3.  contains(CharSequence  c):判断字符串中是否包含指定的字符序列;

4.  startsWith(String s):判断字符串是否以指定的前缀开始;

5.  endsWith(String s):判断字符串是否以指定的后缀结束;

6.  indexOf(char c):返回指定字符在字符串中第一次出现的索引;

7.  lastIndexOf(char c):返回指定字符在字符串中最后一次出现的索引;

8.  isEmpty():当且仅当字符串长度为0时,返回true;

9.  replace(char old,char new):把字符串中的old字符替换为new字符,然后返回一个新字符串;

10.  split(String s):根据指定的规则拆分字符串,返回字符串数组;

11. subString(int begin,int end):按照指定的索引截取字符串,从begin(包含)开始,到end(不包含)结束;

12.  toLowerCase():把字符串的英文字母全部转为小写;

13.  toUpperCase():把字符串的英文字母全部转为大写;

14.  trim():清除字符串前后的空白字符;

15.  valueOf():把指定类型的数据转为字符串类型;

16.  toCharArray():把字符串转为字符数组;

3.2 可变字符序列

StringBuffer和StringBuilder都是可变的字符序列,唯一的区别:StringBuffer是线程安全的,StringBuilder是线程不安全;

常用方法:

1.  append():追加;

2.  toString():把所有追加的内容以String类型返回;

4、System类

常用方法:

currentTimeMillis():获得当前时间戳,以毫秒为单位

exit(0):正常终止JVM

5、时间日期操作

5.1 时区操作(了解)

实例:

/*

       * 获取可用时区ID的方法

       */

      //获得时区对象的方法

//    TimeZone t = TimeZone.getDefault();

      //获取可用的所有ID

      String[] ids = TimeZone.getAvailableIDs();

      for (Stringid :ids) {

        //获得每次遍历ID的时区对象

        TimeZone tz = TimeZone.getTimeZone(id);

       System.out.println(id+"------>"+tz.getDisplayName());

      }

      //根据时区ID获得时区对象

      TimeZone tz = TimeZone.getTimeZone("Africa/Abidjan");

      //设置时区

      TimeZone.setDefault(tz);

     

      //根据时间戳获得指定日期对象

      long time = 0;

      Date d = new Date(time);

      System.out.println(d);

5.2 Date类

构造方法:

1.  Date():创建日期对象;

2.  Date(long t):根据时间戳创建日期对象;

常用方法:

1.  after(Date d):当前日期对象是否在指定日期之后;

2.  before(Date d):当前日期对象是否在指定日期之前;

3.  getTime():获得当前的时间戳;

4.  setTime(long t):设置时间对象的具体时间为指定的时间戳;

5.3 Calendar类

实例:

      //获得日历对象

      Calendar c = Calendar.getInstance();

      int year = c.get(Calendar.YEAR);//获得年份

      System.out.println(year);

      int month = c.get(Calendar.MONTH);//获得月份

      System.out.println(month+1);

      int day = c.get(Calendar.DAY_OF_MONTH);//获得月份中的日期

      System.out.println(day);

      int week = c.get(Calendar.DAY_OF_WEEK);//星期几

      System.out.println(week-1);

//    int s = c.get(Calendar.HOUR);//12小时制的时

      int s = c.get(Calendar.HOUR_OF_DAY);//24小时制的时

      System.out.println(s);

      int f = c.get(Calendar.MINUTE);//小时的分钟数

      System.out.println(f);

      int m = c.get(Calendar.SECOND);//

      System.out.println(m);

      int hm = c.get(Calendar.MILLISECOND);//毫秒

      System.out.println(hm);

常用方法:

1.  add(int field,int value):计算时间日期的偏移量;

2.  getTime():获得Date类型的日期对象;

3.  getTimeInMillis():获得时间戳;

4.  get(int field):获得时间数据;

5.  set(int field,int value):设置具体的时间;

6.  set(year,month,day,hour,minute,second):通过参数直接设置具体时间;

7.  setTime(Date d):把Date类型转为Calendar类型;

Calendar的子类GregorianCalendar,是格里高利日历,常用的方法:

 isLeapYear(int year):判断指定年份是否为闰年,是闰年返回true;

5.4 日期格式化

1.格式化日期

实例:

//    Date d = new Date(0);

SimpleDateFormat sdf = new SimpleDateFormat("yMdd HH:mm:ss");

      System.out.println(sdf.format(new Date()));

2.解析日期

实例:

Scanner sc = new Scanner(System.in);

      System.out.println("请输入一个日期:");

      String str = sc.next();

      SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");

      //把字符串类型的日期解析为Date对象

      Date d = sdf.parse(str);

      System.out.println(d);

注意解析的模式是否正确,防止抛出解析异常

6、Math类

Math类是数学相关的操作工具类

7、Random类

获取伪随机数的类

8、Scanner类

获得用户在控制台输入的内容

9、Desktop类

使用Java程序执行本机的应用程序

执行浏览器实例:

//    URI uri = new URI("http://www.baidu.com");

      //获得本机对象

//    Desktop d = Desktop.getDesktop();

//    d.browse(uri);

      //简化

Desktop.getDesktop().browse(new URI("http://www.taobao.com"));

执行本地应用程序实例:

//执行本地应用程序

      Desktop.getDesktop().open(new File("F:/a.txt"));

10、正则表达式

正则符号:

含义

符号

数字

[0-9]   \\d

字母

[a-zA-Z]

空白字符

[ \n\t\r\f\x0B]

表示非

[^规则]

任意字符(换行除外)

.(点)

正则开始

^

正则结束

$

正则数量:

符号

含义

+

n≥1   1到多个

*

n≥0   0到多个

?

0≤ n ≤1   0或1个

{n}

n个

{n,}

n ≤    n到多个

{n,m}

n≤ num ≤m   n到m个

正则逻辑:

含义

符号

分组

()

  |

 什么都不写

实例:

验证手机号:

//手机号是11位数字,前3位是136/130开头,后8位是随机数字

      String str = "13033338880";

      //规则

      String gz = "^(([1][3][6])|([1][3][0]))([0-9]{8})$";

      booleanrel =str.matches(gz);

     

      if(rel){

         System.out.println("ok");

      }else{

         System.err.println("no");

      }

邮箱验证:

//邮箱 zhangsan_.[email protected]为例,前缀:字母、数字、下划线、点、减号,@qq/126/139/sinacom/com.cn/org/cn

      String str = "[email protected]";

      //规则

      String gz = "^([0-9a-zA-Z_.-]{3,18})"

                + "[@]"

                + "(([q]{2})|([1][2][6])|([1][3][9])|([s][i][n][a]))[.]"

                + "(([c][o][m])|([c][n])|([c][o][m][.][c][n]))$";

      booleanrel =str.matches(gz);

     

      if(rel){

         System.out.println("ok");

      }else{

         System.err.println("no");

      }


猜你喜欢

转载自blog.csdn.net/faerieyw/article/details/78346551
今日推荐