Java中常用的包、類、接口以及util包下的常用類和方法(附:Java API 1.8幫助文檔下載地址)


一:Java中常用的包、類、接口

常用的類:

  BufferedReader   BufferedWriter 

  FileReader           FileWirter 

  String                   Integer 

  Date                     Class

  HashMap        Object

  Runtime        file

  Integer       Long

  Thread

 

 

 常用的包

  java.lang      java.io

  java.util        java.sql

  java.swt       java.math

  javax.servlet     org.apache.struts.action

  org.hibernate    

   

 

常用的接口:

  List        Map

  Document     NodeList

  Servlet       HttpServletResponse

  Session        Transaction  

  HttpSession    Iterator

  Comparable       Clone

  Serializable     Runnable 

 

二:java.util包下的常用類和方法(工具包)

 

java學習–java.util包中常用類
java.util包被稱為java工具包,里面包含大部分的工具類:
包括:

 

1.Random類產生隨機數:
Random 類作為JAVA中用於產生的隨機數 ,new Random(10) :10是種子數。
注意:Random 的一個特點是:相同種子數的Random對象,對應相同次數生成的隨機數字是完全相同的。

 

1):Random生成隨機數:

Random random =new Random();
        for(int i = 0;i < 4;i++){
          // random.nextInt(10)意思是返回大於等於0,小於10的一個正整數,要想生成多少位的隨機數,只需要修改參數值即可。
            System.out.println(random.nextInt(10));
        }

2):math.random()生成的是個偽隨機數,何為偽隨機數,這里java是以當前系統時間的相關數字作為種子數,按照特定復雜算法生成的,其實它生成的大量隨機數是線性均勻分布的,黑客是完全可能通過返回的大量隨機數結果破解種子數的,所以它並不是真正的隨機,叫偽隨機數。由此我們可以知道通過計算機生成一個真隨機數幾乎是不可能的,因為最終的輸出結果都是依賴算法程序的,這些算法程序本身就是固定的,我們只能通過更復雜的算法不斷優化,讓它無限趨近於真隨機數,但不絕對。
案例:

//生成一個5位數的隨機數 想生成幾位就*多少
for (int i =0;i<100;i++){
            System.out.println((int)((Math.random()*9+1)*10000));
        }

2.Date 日期類
Date 類的基本用法:

package com.example.springboot.caipiao;

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

public class Test2 {

    public static void main(String[] args) throws Exception {


        Date date =new Date();
        //返回當前的時間 Mon Mar 11 20:30:06 CST 2019
        System.out.println(date);

//SimpleDateFormat 主要用來進行date格式轉換。
        SimpleDateFormat simpleDateFormat =new SimpleDateFormat("yyyy-MM-dd");
         String time="2018-09-03";
         //把String類型轉換成date類型
        Date date1 =(Date) simpleDateFormat.parse(time);
        System.out.println(date1);
        //把date類型轉成String
        String dateStr=simpleDateFormat.format(date1);
        System.out.println(dateStr);

    }
}

3.Calendar 日歷類:
基本使用:
Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
int day = c.get(Calendar.DAY_OF_MONTH);
int hour = c.get(Calendar.HOUR_OF_DAY);
int min = c.get(Calendar.MINUTE);
int sec = c.get(Calendar.SECOND);
int w = c.get(Calendar.DAY_OF_WEEK);

ps:Calendar類是一個抽象類,需要通過getInstance()方法來實現

Calendar與Date類之間的轉換分別是getTime()和setTime()

Calendar對象獲取month將會比實際的月份少一個月,是從下標為0開始的

Calendar對象獲取day_of_week是獲取到當前星期,返回的是重這周日到當前禮拜的天數。

package com.example.springboot.caipiao;

import javax.xml.crypto.Data;
import java.util.Calendar;
import java.util.Date;
import java.util.Random;

public class Test1 {

    public static void main(String[] args) {
        Calendar calendar =Calendar.getInstance();
        Date date =new Date();
        //把date set到Calendar
        calendar.setTime(date);
        //獲取當前時間的年
        System.out.println(calendar.get(Calendar.YEAR));
        //當前年+1
        calendar.add(Calendar.YEAR,1);
        System.out.println(calendar.get(Calendar.YEAR));



    }
}

3-1:jdk1.8的時間:

一、jdk8與之前的日期和時間處理類的不同:

Java的java.util.Date和java.util.Calendar類易用性差,不支持時區,並且是可變的,也就意味着他們都不是線程安全的;
用於格式化日期的類DateFormat被放在java.text包中,它是一個抽象類,所以我們需要實例化一個SimpleDateFormat對象來處理日期格式化,並且DateFormat也是非線程安全,這意味着如果你在多線程程序中調用同一個DateFormat對象,會得到意想不到的結果。
對日期的計算方式繁瑣,而且容易出錯,因為月份是從0開始的,這意味着從Calendar中獲取的月份需要加一才能表示當前月份
由於以上這些問題,出現了一些三方的日期處理框架,例如Joda-Time,data4j等開源項目


二、Java 8日期/時間類
Java 8的日期和時間類包含LocalDate、LocalTime、Instant、Duration以及Period,這些類都包含在java.time包中。


三:日期的操作和格式化
1、增加和減少日期

2、格式化日期
新的日期API中提供了一個DateTimeFormatter類用於處理日期格式化操作,它被包含在java.time.format包中,Java 8的日期類有一個format()方法用於將日期格式化為字符串,該方法接收一個DateTimeFormatter類型參數:


四:時區
Java 8中的時區操作被很大程度上簡化了,新的時區類java.time.ZoneId是原有的java.util.TimeZone類的替代品。ZoneId對象可以通過ZoneId.of()方法創建,也可以通過ZoneId.systemDefault()獲取系統默認時區:

 

五:日期和時間主要類的關系

4.TimerTask 定時任務類:

5.Arrays 數組類:
binarySearch(數組,值) 用二分法查找值在數組中出現的下標位置,前提條件,數組必須是有序的
sort(數組) 對數組用快排法進行排序
toString(數組) 將數組轉換成字符串形式
copyOf(數組,長度)拷貝數組,得到一個新數組

 

六:Java.util包中所有的接口、類、異常  等等

一:Java.util包中所有的接口

 

二:Java.util包中所有的類

三:Enums(枚舉)

四:Exceptions(異常)

 

五:Errors

 

Java API 1.8 中文版 (幫助文檔)免費下載:

[百度雲盤鏈接]鏈接已更新:   

鏈接:https://pan.baidu.com/s/11GhY8EIQjRN1MRxKUYlB2g
提取碼:gaf5     (永久有效)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM