?有個東西叫API,昨天忘記說明了。
API是啥呢?
API,全稱叫Application Programming Interface,翻譯成中文就是:應用程序編程接口。
按照我的理解它就相當于是一本字典,計算機語言的字典。
只不過我們平時所理解的字典,要么漢字,要么英文單詞,在Java語言里就是一個個類,接口等,其實它們本質上是差不多的。
為什么平時很少需要使用到漢字字典?
因為這么多年的生長環境,很多常用的字都融會貫通了。
為什么我還需要時常查閱API?
因為我對API中的類基本都還沒啥接觸。
所以繼續學習API中的常用類,也就相當于字典中的常用字。
一、String類
String,翻譯成中文:字符串,它是Java里很重要的一個類。
前面還沒有系統地學習過它,就已經接觸過好多回了,畢竟它太常見了,常見頻率大概就和中文中吃飯的飯字差不多吧。
String的創建方法:
空參構造:值為空。
字符數組構造方法。
字節數組構造方法(按照對應的ASCII編碼對應)。
不用構造方法,直接賦值常量,這種方式比較特殊,也比較常見,因為常量的基本類型有一種就是字符串,所以可以直接賦值。
注:在jdk8中,char[]是字符串內部實現原理,在jdk9版本中改為byte[]了。
理解完創建方式,那String的常用方法有哪些?
1.判斷方法
定義了一個字符串變量str:“abc”。
equals("ABC"):將str與參數“ABC”相比較,“abc”和“ABC”不相等,故返回false。
equalsIgnoreCase(“ABC”):將str與參數“ABC”相比較(忽略大小寫),這樣的話“abc”和“ABC”就相等了,故返回true。
contain("ab"):判斷str是否包含"ab",答案包含,故返回true。
startsWith(“a”):判斷str是否以某個子串開頭,“abc”以“a”開頭,故返回true.
2.獲取方法
length():獲取字符串的長度,“abc”長度為3。
concat("def"):將“def”連接到字符串中,也就成了“abcdef”。
charAt(0):獲取0索引位的字符,也就是’a‘。
indexOf("ab"):獲取子字符串“ab“首字母在字符串的索引,若是不存在的話,返回-1。
substring(1):從指定索引(1)處開始截取字符串,直至結束。
substring(1,2):從指定索引(1)處開始截取,直至指定索引(2)處結束,截取字符串。
3.轉換方法
tocharArray():將字符串轉換為字符數組{’a‘,'b','c'}。
getBytes():獲得對應的字節數組{97,98,99}。
replace(“bc”,''ef"):將字符串中的“bc”替換成“ef”,故成了“aef”。
toLowerCase():將字符串全部轉換成小寫字母。
toUpperCase():將字符串全部轉換成大寫字母。
4.切割功能
split():將字符串按照指定的規則切割開。
比如說:以“+”這個加號字符為界切割,但是因為“+”本身就有就具有一定的含義(它是個運算符),就要使用“\”,讓“+”成為一個單純的字符就可以了。
其中”\“叫做轉義字符,當轉義字符要當做普通的字符時,需要進行自身轉義變成”\“。
二、static關鍵字
static這個單詞前面已經不知道見過多少回了,現在就詳細學學它到底是什么意思?
static翻譯成中文就是:靜態。它是一個修飾符,可以用來修飾變量和方法。
那靜態變量和靜態方法有何特別之處?
做一個回顧:
這幾天我們學習了好幾個類:Scanner類,Random類,ArrayList類。
這些類我們需要調用它的成員方法時,先得new出對應的一個對象,然后再用這個對象去調用對應的方法。
static的作用就是讓這個類中的成員方法和成員變量,用類名直接就可以調用,不用new一個對象,操作起來非常方便,但相對的也就不安全,所以一般都是一些可以共享的信息才會用到static。
接下來就介紹兩個工具類,體現static 方法的方便。
三、Arrays類
Arrays,這一看就是一個數組類,包含了各種操作數組的方法。
其所有方法均為靜態方法,操作起來非常方便,其中最常用的兩個靜態方法:
toString():該方法能直接將一個數組轉換成一個字符串。
sort():能將數組升序排列。
四、math類
math,翻譯成中文就是數學的意思,顯然就是數學里面需要的一些運算方法。
常用的有:
abs(-5):即表示求-5的絕對值,也就是5。
ceil(5.5):ceil意思是天花板,即表示往上取整,5.5往上取整也就是6。
floor(5.5):floor意思是地板,即表示往下取整,5.5往下取整也就是5.
round(5.5):round意思也就是四舍五入,現實里最常見的方式。
總結: