string與基本資料型別,包裝類之間的轉換
string與字元陣列之間的轉換
string與byte型別的轉換
stringbuffer
string類
特性string 是乙個final類,代表不可變的字串行;final類是不可以被繼承的
—string實現了serializable介面,表示字串是支援序列化的
—string實現了comparable介面,表示string可以比較大小
字串是常量,用雙引號引起來表示,在建立之後不能更改
—string代表不可變的字串行,簡稱不可變性
string物件的字元內容是儲存在乙個字元陣列value中
—string內部定義了final char value用於儲存字串資料
string s = "abc";
這裡採用字面量的定義方式;
通過字面量(不同於new)的方式給乙個字串賦值,此時的字串值宣告在字串常量池中。
字串常量池中是不會儲存相同內容的字串的。
string不變性的例項public
class
helloworld
;public
static
void
main
(string[
] args)
public
void
change
(string str,
char ch)
}
可以先看下**,思考下結果是什麼。
結合一下string的不變性加深理解。
執行結果:
good
best
由於string的不變性,這裡是先宣告乙個string型別的str,儘管主函式呼叫了change(),但由於string的不變性,因此str的內容並沒有改變。而char陣列並沒有該特性,因此當呼叫了change後,就把ch[0]變成了』t』。
拼接
public
class
helloworld
}
常量與常量的拼接結果(+)在常量池,且常量池中不會存在相同內容的常量。
只要其中有乙個是變數,結果就在堆中。
如果拼接的結果呼叫intern()方法,返回值就在常量池中。
string的常用方法
string與基本資料型別,包裝類之間的轉換
string->基本資料型別/包裝類
呼叫包裝類的靜態方法:par***xx(str)?)
string str =
"135"
;int num = integer.
parseint
(str)
;
基本資料型別/包裝類->string
呼叫string過載的valueof
string str =
"abc"
;int num = integer.
parseint
(str)
;string strout = string.
valueof
(num)
;
string與字元陣列之間的轉換
string->char
呼叫string的tochararray()方法
string str =
"hello world"
;char
chararray = str.
tochararray()
;for
(int i =
0;i)
char->string
呼叫string的構造器
char
arr =
newchar
;string str =
newstring
(arr)
;system.out.
println
(str)
;
string與byte型別的轉換
string->byte
呼叫string的getbytes()
string str =
"helloworld"
;byte
bytes = str.
getbytes()
;//使用預設的字符集進行轉換
system.out.
println
(arrays.
tostring
(bytes));
byte
bytes = str.
getbytes
("gbk");
//gbk字符集進行編碼
system.out.
println
(arrays.
tostring
(bytes)
);
byte->string
呼叫string的構造器
string str =
"helloworld"
;byte
bytes = str.
getbytes()
;string strout =
newstring
(bytes)
;//通過bytes解碼到string
//解碼時要求解碼使用的字符集必須與編碼時使用的字符集一致
stringbuffer
string,stringbuffer,stringbuilder
—string
不可變的字串行;
—stringbuffer
可變的字串行;
執行緒安全的,效率低;
—stringbuilder
可變的字串行;
執行緒不安全的,效率高;
三者—底層陣列使用char 進行儲存
gbuffer,stringbuilder
—string
不可變的字串行;
—stringbuffer
可變的字串行;
執行緒安全的,效率低;
—stringbuilder
可變的字串行;
執行緒不安全的,效率高;
三者—底層陣列使用char 進行儲存
第一節綜述
shader是什麼?shader是著色器。渲染流水線的概念?渲染流水線的工作任務在於由乙個三維場景出發,生成一張二維影象。渲染流程分為3個階段 應用階段 幾何階段 光柵化階段。1 應用階段 由cpu負責實現,由開發者主導。最重要的輸出是渲染所需的幾何資訊,即渲染圖元。這些渲染圖元傳遞給幾何階段。2 ...
第一節 熱機
一.熱機 內燃機是熱機的一種,以汽油或柴油為燃料 二.汽油機 練1.三.柴油機 練2.從能量轉化的角度看,一台四衝程內燃機在乙個迴圈中 1 哪個衝程存在著化學能轉化為內能的過程?2 哪個衝程存在著內能轉化為機械能的過程?3 哪個衝程具有很明顯的機械能轉化為內能的過程?練3.關於單缸四衝程內燃機,下列...
第一節 linux c編譯
在linux中開發c或c 程式的步驟 先用vim編輯c或c 程式 c儲存為.c c 儲存為.cc 或.cpp檔案 對於.c格式的c檔案,可以採用gcc或g 編譯 對於 cc cpp格式的c 檔案,應該採用g 進行編譯 gcc編譯過程 gcc所支援字尾名 預處理階段 對包含的標頭檔案 include ...