java筆記:character類,string類,stringbuilder,stringbuffer

作爲一個非java程序員,但又想走安卓方向的,參加了面試發現需要手擼代碼寫不出來啊(肯定涼了),一些常見的方法不知道,需要查閱文檔可是不行,平時都是用android studio直接出代碼的(沒有工具我就不會寫代碼了)只能亡羊補牢了,補一下了。

java中的基本數據類型沒有方法和屬性(不是對象),使用包裝類使得這些基本數據類型擁有方法和屬性,實現對象化交互。

包裝類:將基本的數據類型及一些輔助方法包裝到類中。

包裝類分爲兩類一類是對象型包裝類,不繼承任何其他類(Object的直接類),另一類是數值型包裝類,繼承於Nmuber類。

裝箱:將基本數據類型轉換成包裝類對象。

拆箱:將包裝類轉換成基本數據類型。

//自動裝箱
int a1 = 0;
Integer a2 = a1;
//手動裝箱(構造方法)
Integer a3 = new Integer(a1);
//自動拆箱
int a4 = a2;
//手動拆箱,需要不同的基本數據類型使用對應的xxxValue方法,xxx對應數據類型:int,double等
int a5 = a2.intValue();
        

包裝類對象的初始化值爲null(對象)。

字符串轉換:

使用包裝類toString()方法,把基本類型轉換成字符串

調用包裝類parseXxx()靜態方法,或者先將字符串轉換成包裝類再拆箱轉換成基本類型。字符串轉換成基本類型。

char是java八種基本類型之一。Character類(包裝類):用於對單個字符進行操作,提供了方法來操作字符。

string是j字符串,是對象不是類型。String類(包裝類):用於創建和操作字符串。

注:通過new關鍵字創建對象會開闢不同的內存空間。

Character類

列出一些常用的方法:

isLetter()//是否是一個字母字符

isDigit()//是否是一個數字字符

isWhitespace//是否是一個空白字符

isUpperCase()//是否是大寫字母

isLowerCase()//是否是小寫字母

toUpperCase()//指定字母的大寫形式

toLowerCase()//指定字母的小寫形式

toString()//轉換成字符串

String類:

常用方法:

length()//獲取字符串對象包含的字符數

concat()//連接字符串,用+也可以

char charAt(int index)//返回索引處的char值

int compareTo(Object o)//把字符串和另一個對象比較

int compareTo(String s)//比較兩個字符串

int compareToIgnoreCase(String s)//比較兩個字符串,不考慮大小寫

boolean contentEquals(StringBuffer sb)//當字符串和指定的StringBuffer具有想的順序的字符時返回真

static String copyValueOf(char[] c 【,int offset,int count ]】)//返回指定數組中表示該字符序列的String

boolean statrsWith(String s)//此字符串是否以指定的前綴開始

boolean endsWith(String s)//此字符是否以指定的後綴結束

boolean equals(Object o)//字符串與指定的對象比較

byte[] getBytes(【String s】)使用平臺的默認字符集將此String編碼爲byte序列,並將結果儲存到一個新的byte數組中

void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)//將字符從此字符串複製到目標字符數組

int indexOf(int c)//返回指定字符在此字符串第一次出現的索引

int indexOf(String s)//返回指定子字符串在此字符串中第一次出現的索引

int hashCode()//返回此字符串的哈希碼

int lastIndexOf(int c)//返回指定字符在字符串中最後一次出現處的索引

int lastIndexOf(String s)//同上

String replace(char old,char new)//返回一個新的字符串,通過new代替字符串中出現所有的old

String replaceAll(String regex,String replacement)//使用給定的replacement替換此字符串所有匹配的正則表達式的子字符串

String replaceFirst(String regex,String replacement)//使用給定的replacement替換此字符串第匹配的正則表達式的第一個子字符串

String split(String regex)//根據正則表達式拆分字符串

char[] toCharArray()//將此字符串轉換成一個新的字符數組

String toLowerCase()//將此字符串全部轉換爲小寫

String toUpperCase()//將此字符串全部轉換成大寫

String trim()//返回字符串的副本,忽略前空白和尾部空白

創建格式化字符串

format()//返回一個String對象

printf()//直接打印輸出

當對字符串進行修改的時候,需要使用StringBuffer和StringBuilder類(String對象的改變不是改變原對象,而是生成一個新的對象)。StringBuffer和StringBuilder類的對象能夠被多次修改。

有線程安全要求的情況下,必須使用StringBuffer類。StringBuilder比StringBuffer有速度優勢。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章