字符串不是java基本的數據類型,而是java標準庫中的一個String類,每個用雙引號引起來的字符串就是String類的一個實例。如:`String name="Tonny"`。
### 1.子串
使用substring可以從一個較大的字符串中提取一個子串。比如:
~~~
String greeting="HelloWorld!";
System.out.println(greeting.substring(2));//llo World!
System.out.println(greeting.subSequence(2, 6));//lloW
~~~
substring() 接受一個參數時,參數為子串開始位置,字符串從0開始計算位置。
substring()接收2個參數時分別為開始位置和結束位置,截取的字符串包含開始位置不包含結束位置。
### 2.拼接
使用”+”可以拼接2個字符串。例如;
~~~
String str1="Hello";
String str2="World!";
String str3=str1+str2;
System.out.println(str3);//HelloWorld
~~~
一個字符串和和一個非字符串進行拼接時,后者被轉換為字符串類型。在java中任何一個字符串對象都可以轉換為字符串。
### 3. 不可變字符
java中沒有修改字符串的方法,java使用拼接再賦值的方式來實現字符串的修改。原來的字符串仍然存在,只是變量指向了新的字符串而已。hello永遠是包含h、e、l、l、o的代碼單元序列。
### 4.檢查字符串是否相等
這個問題經常出現在各種筆試、面試題中。字符串的equals方法用來檢查2個字符串的值是否相等,==比較的是2個字符串的地址是否相同,即是否指向的是同一個字符串。使用substring、+截取或者拼接的字符串雖然內容一樣,但是地址不一樣。
~~~
String a="ucas";
String b=a.substring(0,3)+"s";
System.out.println("ucas".equals(a));//true
System.out.println(a.equals(b)); //true
System.out.println(a==b); //false
~~~
### 5.空串與Null串
空串是一個String 對象,內容為空,長度為0。null表示沒有對象和它關聯。判斷一個字符串對象是不是為空串:
~~~
if(str.length==0)
或者
if(str.equals(""))
~~~
檢查一個對象既不為null也不為空:
~~~
if(str!=null&&str.length!=0)
~~~
### 6.字符串Api
- boolean endwith()判斷字符串后綴
- equalIgnoreCase()忽略大小寫比較
- int indexOf() 子串首次出現位置
- int lastIndexOf() 返回字符串最后一次出現位置
- int length() 返回字符串長度
- boolean startWith(prefix)判斷字符串是否以prefix開頭
- String toLowerCase 轉為小寫
- String toUpperCase 轉為大寫
- String trim()刪除空格
- 前言
- [J2EE]java web項目中調用word轉html命令行工具
- [J2EE]jsp項目中使用UEditor富文本編輯器
- [J2EE]The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
- [j2ee]Eclipse搭建SSH開發框架
- Could not open Hibernate Session for transaction
- class org.springframework.web.context.ContextLoaderListener
- [java01]Java基本數據類型
- [java02]運算符
- jsp、javabean學生信息管理系統
- [java03]java字符串
- [ssh新聞發布系統一]搭建開發環境
- [ssh新聞發布系統二] 讀取新聞
- [ssh新聞發布系統三]存儲新聞
- [ssh新聞發布系統四]使用富文本編輯器發布新聞
- [ssh新聞發布系統五]刪除新聞
- struts2 helloworld
- struts請求走向流程
- [java04]java大數類