1、Scanner 類java
一個能夠解析基本類型和字符串的簡單文本掃描器。程序員
package cn.wxuns;import java.util.Scanner;public class MyScanner { public static void main( String[] args){ Scanner myScanner = new Scanner(System.in); System.out.println("請輸入一個數字"); int sc = myScanner.nextInt(); System.out.println(sc); }}
2、Random 類數組
生成僞隨機數app
package cn.wxuns;import java.util.Random;public class MyRandom { public static void main(String[] args){ int random = new Random().nextInt(100); System.out.println(random); }}
3、ArrayList 類dom
定義:ArrayList<String>,ArrayList<Student>方法:add,set,get,remove,clone,size 等package cn.wxuns;import java.util.ArrayList;public class MyArray { public static void main(String[] args){ ArrayList<String> arr = new ArrayList<>(); arr.add("lisi"); System.out.println(arr.get(0)); }}
ArrayList 對象不能存儲基本類型,只能存儲引用類型的數據。相似 不能寫,可是存儲基本數據類型對應的包裝類型是能夠的。因此,想要存儲基本類型數據, <> 中的數據類型,必須轉換後才能編寫,轉換寫法以下:
4、String 類ide
類 String 中包括用於檢查各個字符串的方法,好比用於比較字符串,搜索字符串,提取子字符串以及建立具備翻譯爲大寫或小寫的全部字符的字符串的副本。函數
1. 字符串不變:字符串的值在建立後不能被更改。工具
String s1 = "abc";s1 += "d";System.out.println(s1); // "abcd"// 內存中有"abc","abcd"兩個對象,s1從指向"abc",改變指向,指向了"abcd"。
2. 由於 String 對象是不可變的,因此它們能夠被共享性能
String s1 = "abc";String s2 = "abc";// 內存中只有一個"abc"對象被建立,同時被s1和s2共享。
3."abc" 等效於 char [] data={ 'a' , 'b' , 'c' } 。ui
例如:String str = "abc";至關於:char data[] = {'a', 'b', 'c'};String str = new String(data);// String底層是靠字符數組實現的。
5、構造方法
常見 String 類方法:
6、Arrays 類
java.util.Arrays 此類包含用來操做數組的各類方法,好比排序和搜索等。其全部方法均爲靜態方法,調用起來很是簡單。
1.Arrays.asList(T… data)
注意:該方法返回的是 Arrays 內部靜態類 ArrayList,而不是咱們日常使用的 ArrayList,,該靜態類 ArrayList 沒有覆蓋父類的 add, remove 等方法,因此若是直接調用,會報 UnsupportedOperationException 異常
List<Integer> list = Arrays.asList(1, 2, 3);Integer[] data = {1, 2, 3};List<Integer> list = Arrays.asList(data);
int[] data = {1, 2, 3};List<int[]> list = Arrays.asList(data);
2.Arrays.fill()
Integer[] data = {1, 2, 3, 4};Arrays.fill(data, 9);System.out.println(Arrays.toString(data)); // [9, 9, 9, 9]
Integer[] data = {1, 2, 3, 4};Arrays.fill(data, 0, 2, 9);System.out.println(Arrays.toString(data)); // [9, 9, 3, 4]
3.Arrays.sort()
int[] data = {1, 2, 3,1,3,4};Arrays.sort(data);System.out.println(data);
String[] data = {"1", "4", "3", "2"};System.out.println(Arrays.toString(data)); // [1, 4, 3, 2]// 對下標[0, 3)的元素進行排序,即對1,4,3進行排序,2保持不變Arrays.sort(data, 0, 3);System.out.println(Arrays.toString(data)); // [1, 3, 4, 2]
String[] data = {"1", "4", "3", "2"};System.out.println(Arrays.toString(data)); // [1, 4, 3, 2]// 對下標[0, 3]的元素進行降序排序,即對1,4,3進行降序排序,2保持不變Arrays.sort(data, 0, 3, (str1, str2) -> { if (str1.compareTo(str2) > 0) { return -1; } else { return 1; }});System.out.println(Arrays.toString(data)); // [4, 3, 1, 2]
4.Arrays.parallelSort()
對數組元素進行排序(並行排序),當數據規模較大時,會有更好的性能
Arrays.parallelSort(data);
5.Arrays.binarySearch () 二分法 查找
注意:在調用該方法以前,必須先調用 sort () 方法進行排序,若是數組沒有排序, 那麼結果是不肯定的,此外若是數組中包含多個指定元素,則沒法保證將找到哪一個元素
6.Arrays.copyOf()
拷貝數組,其內部調用了 System.arraycopy () 方法,從下標 0 開始,若是超過原數組長度,會用 null 進行填充
Integer[] data1 = {1, 2, 3, 4};Integer[] data2 = Arrays.copyOf(data1, 2);System.out.println(Arrays.toString(data2)); // [1, 2]Integer[] data2 = Arrays.copyOf(data1, 5);System.out.println(Arrays.toString(data2)); // [1, 2, 3, 4, null]
7.Arrays.copyOfRange(T[] original, int from, int to)
拷貝數組,指定起始位置和結束位置,若是超過原數組長度,會用 null 進行填充,同 6
8.Arrays.equals(Object[] array1, Object[] array2)
判斷兩個數組是否相等,實際上比較的是兩個數組的哈希值,即 Arrays.hashCode (data1) == Arrays.hashCode (data2)
9.Arrays.deepEquals(Object[] array1, Object[] array2)
判斷兩個多維數組是否相等,實際上比較的是兩個數組的哈希值,即 Arrays.hashCode (data1) == Arrays.hashCode (data2)
10.Arrays.hashCode(Object[] array)
返回數組的哈希值
11.Arrays.deepHashCode(Object[] array)
返回多維數組的哈希值
12.Arrays.toString(Object[] array)
返回數組元素的字符串形式
Integer[] data = {1, 2, 3};System.out.println(Arrays.toString(data)); // [1, 2, 3]
13.Arrays.deepToString(Object[] array)
返回多維數組元素的字符串形式
14.Arrays.setAll(T[] array, IntFunction
Integer[] data = {1, 2, 3, 4};// i爲索引值Arrays.setAll(data, i -> data[i] * 2);System.out.println(Arrays.toString(data)); // [2, 4, 6, 8]
15.Arrays.parallelSetAll(T[] array, IntFunction
Integer[] data = {2, 3, 4, 5};// 第一個元素2不變,將其與第二個元素3一塊兒做爲參數x, y傳入,獲得乘積6,做爲數組新的第二個元素// 再將6和第三個元素4一塊兒做爲參數x, y傳入,獲得乘積24,做爲數組新的第三個元素,以此類推Arrays.parallelPrefix(data, (x, y) -> x * y);System.out.println(Arrays.toString(data)); // [2, 6, 24, 120]
16.Arrays.spliterator(T[] array)
返回數組的分片迭代器,用於並行遍歷數組
17.Arrays.stream(T[] array)
返回數組的流 Stream,而後咱們就可使用 Stream 相關的許多方法了
7、Math 類
java.lang.Math 類包含用於執行基本數學運算的方法,如初等指數、對數、平方根和三角函數。相似這樣的工具類,其全部方法均爲靜態方法,而且不會建立對象,調用起來很是簡單。
8、Object 類
對象,全部的類都繼承 Object 類,可重寫部分方法
9、日期時間類
Date 類
表示特定的瞬間,精確到毫秒。
after,before,clone,getTime,hashCode,toString
DateFormat 類
是日期 / 時間格式化子類的抽象類,咱們經過這個類能夠幫咱們完成日期和文本之間的轉換,也就是能夠在 Date 對象與 String 對象之間進行來回轉換。
因爲 DateFormat 爲抽象類,不能直接使用,因此須要經常使用的子類 java.text.SimpleDateFormat
建立 SimpleDateFormat
import java.text.DateFormat;import java.text.SimpleDateFormat;public class MySimpleDateFormat { public static void main(String[] args) { // 對應的日期格式如:2018-01-16 15:06:38 DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); }}
經常使用方法:
Calendar 類
Calendar 爲抽象類,因爲語言敏感性,Calendar 類在建立對象時並不是直接建立,而是經過靜態方法建立 getInstance(),返回子類對象
經常使用方法:
Calendar 類中提供不少成員常量,表明給定的日曆字段:
10、System 類
11、StringBuilder 類
因爲 String 類的對象內容不可改變,因此每當進行字符串拼接時,老是會在內存中建立一個新的對象。
在 API 中對 String 類有這樣的描述:字符串是常量,它們的值在建立後不能被更改。爲了解決這一問題,可使用 java.lang.StringBuilder 類。
構造函數:
方法:
12、包裝類
Java 提供了兩個類型系統,基本類型與引用類型,使用基本類型在於效率,然而不少狀況,會建立對象使用,由於對象能夠作更多的功能,若是想要咱們的基本類型像對象同樣操做,就可使用基本類型對應的包裝類,以下:
基本數值 ----> 包裝對象
Integer i = new Integer(4);//使用構造函數函數Integer iii = Integer.valueOf(4);//使用包裝類中的valueOf方法
原做者:Java
原文連接: java程序員經常使用的11個API,趕忙收藏
原出處:公衆號
侵刪