第一章 String類
1.1 String 類概述
概述
java.lang.String 類代表字符串。Java程序中所有的字符串文字(例如 "abc" )都可以被看作是實現(xiàn)此類的實例衣赶。
類? String 中包括用于檢查各個字符串的方法诊赊,比如用于比較字符串,搜索字符串屑埋,提取子字符串以及創(chuàng)建具有翻譯為大寫或小寫的所有字符的字符串的副本豪筝。
特點
????????1. 字符串不變:字符串的值在創(chuàng)建后不能被更改。
2. 因為String對象是不可變的,所以它們可以被共享续崖。
3. "abc" 等效于 char[]?data={?'a'?,?'b'?,?'c'?} 敲街。
1.2 使用步驟
查看類
????????java.lang.String :此類不需要導入。
查看構造方法
????????public?String() :初始化新創(chuàng)建的 String對象严望,以使其表示空字符序列多艇。
????????public?String(char[]?value) :通過當前參數(shù)中的字符數(shù)組來構造新的String。
????????public?String(byte[]?bytes) :通過使用平臺的默認字符集解碼當前參數(shù)中的字節(jié)數(shù)組來構造新的String像吻。
????????構造舉例峻黍,代碼如下:
? ??
1.3 常用方法
判斷功能的方法
獲取功能的方法
public?int?length?() :返回此字符串的長度惭每。
public?String?concat?(String?str) :將指定的字符串連接到該字符串的末尾骨饿。
public?char?charAt?(int?index) :返回指定索引處的 char值。
public?int?indexOf?(String?str) :返回指定子字符串第一次出現(xiàn)在該字符串內(nèi)的索引台腥。
public?String?substring?(int?beginIndex) :返回一個子字符串宏赘,從beginIndex開始截取字符串到字符串結尾。
public?String?substring?(int?beginIndex,?int?endIndex) :返回一個子字符串黎侈,從beginIndex到endIndex截取字符串察署。含beginIndex,不含endIndex峻汉。
轉(zhuǎn)換功能的方法
public?char[]?toCharArray?() :將此字符串轉(zhuǎn)換為新的字符數(shù)組贴汪。
public?byte[]?getBytes?() :使用平臺的默認字符集將該 String編碼轉(zhuǎn)換為新的字節(jié)數(shù)組。
public?String?replace?(CharSequence?target,?CharSequence?replacement) :將與target匹配的字符串使用replacement字符串替換休吠。
分割功能的方法
public?String[]?split(String?regex) :將此字符串按照給定的regex(規(guī)則)拆分為字符串數(shù)組聂喇。
方法演示,代碼如下
1.4 String 類的練習
拼接字符串
定義一個方法蔚携,把數(shù)組{1,2,3}按照指定個格式拼接成一個字符串希太。格式參照如下[word1#word2#word3]。
統(tǒng)計字符個數(shù)
鍵盤錄入一個字符酝蜒,統(tǒng)計字符串中大小寫字母及數(shù)字字符個數(shù)
第二章 static關鍵字
2.1? 概述
關于? static 關鍵字的使用誊辉,它可以用來修飾的成員變量和成員方法,被修飾的成員是屬于類的亡脑,而不是單單是屬于某個對象的堕澄。也就是說邀跃,既然屬于類,就可以不靠創(chuàng)建對象來調(diào)用了蛙紫。
2.2? 定義和使用格式
類變量
當? static 修飾成員變量時拍屑,該變量稱為類變量。該類的每個對象都共享同一個類變量的值坑傅。任何對象都可以更改該類變量的值僵驰,但也可以在不創(chuàng)建該類的對象的情況下對類變量進行操作。
類變量 :使用 static關鍵字修飾的成員變量唁毒。
定義格式:
舉例:
比如說蒜茴,基礎班新班開班,學員報到〗鳎現(xiàn)在想為每一位新來報到的同學編學號(sid)粉私,從第一名同學開始,sid為1近零,以此類推毡鉴。學號必須是唯一的,連續(xù)的秒赤,并且與班級的人數(shù)相符,這樣以便知道憎瘸,要分配給下一名新同學的學號是多少入篮。這樣我們就需要一個變量,與單獨的每一個學生對象無關幌甘,而是與整個班級同學數(shù)量有關潮售。
所以,我們可以這樣定義一個靜態(tài)變量numberOfStudent锅风,代碼如下:
靜態(tài)方法
當 static 修飾成員方法時酥诽,該方法稱為類方法 。靜態(tài)方法在聲明中有 static 皱埠,建議使用類名來調(diào)用肮帐,而不需要創(chuàng)建類的對象。調(diào)用方式非常簡單边器。
類方法 :使用 static關鍵字修飾的成員方法训枢,習慣稱為靜態(tài)方法。
定義格式:
舉例:在Student類中定義靜態(tài)方法
靜態(tài)方法調(diào)用的注意事項:
????????靜態(tài)方法可以直接訪問類變量和靜態(tài)方法忘巧。
????????靜態(tài)方法 不能直接訪問普通成員變量或成員方法恒界。反之,成員方法可以直接訪問類變量或靜態(tài)方法砚嘴。
????????靜態(tài)方法中十酣,不能使用 this關鍵字涩拙。
小貼士:靜態(tài)方法只能訪問靜態(tài)成員。
調(diào)用格式
被static修飾的成員可以并且建議通過類名直接訪問耸采。雖然也可以通過對象名訪問靜態(tài)成員兴泥,原因即多個對象均屬于一個類,共享使用同一個靜態(tài)成員洋幻,但是不建議郁轻,會出現(xiàn)警告信息。
格式:
2.3 靜態(tài)原理圖解
static 修飾的內(nèi)容:?
????????是隨著類的加載而加載的文留,且只加載一次好唯。?
????????存儲于一塊固定的內(nèi)存區(qū)域(靜態(tài)區(qū)),所以燥翅,可以直接被類名調(diào)用骑篙。?
????????它優(yōu)先于對象存在,所以森书,可以被所有對象共享靶端。
2.4 靜態(tài)代碼塊
靜態(tài)代碼塊 :定義在成員位置,使用static修飾的代碼塊{ }凛膏。
????????位置:類中方法外杨名。
????????執(zhí)行:隨著類的加載而執(zhí)行且執(zhí)行一次,優(yōu)先于 main方法和構造方法的執(zhí)行猖毫。
格式:
作用:給類變量進行初始化賦值台谍。用法演示,代碼如下:
第三章 Arrays類
3.1? 概述
java.util.Arrays 此類包含用來操作數(shù)組的各種方法,比如排序和搜索等沛厨。其所有方法均為靜態(tài)方法乘盼,調(diào)用起來非常簡單。
3.2? 操作數(shù)組的方法
public?static?String?toString(int[]?a) :返回指定數(shù)組內(nèi)容的字符串表示形式俄烁。
public?static?void?sort(int[]?a) :對指定的 int 型數(shù)組按數(shù)字升序進行排序绸栅。
3.3 練習
請使用 Arrays 相關的API,將一個隨機字符串中的所有字符升序排列页屠,并倒序打印粹胯。
第四章 Math類
4.1? 概述
java.lang.Math 類包含用于執(zhí)行基本數(shù)學運算的方法蓖柔,如初等指數(shù)、對數(shù)风纠、平方根和三角函數(shù)起宽。類似這樣的工具類赦颇,其所有方法均為靜態(tài)方法,并且不會創(chuàng)建對象,調(diào)用起來非常簡單淹冰。
4.2? 基本運算的方法
public?static?double?abs(double?a) :返回 double 值的絕對值羞延。
public?static?double?ceil(double?a) :返回大于等于參數(shù)的最小的整數(shù)拷淘。
public?static?double?floor(double?a) :返回小于等于參數(shù)最大的整數(shù)撇他。
public?static?long?round(double?a) :返回最接近參數(shù)的 long。(相當于四舍五入方法)
4.3 練習
請使用 Math 相關的API誊抛,計算在 - 10.8 到 5.9 之間列牺,絕對值大于 6 或者小于 2.1 的整數(shù)有多少個?