本文目錄一覽:
登陸手機銀行出現java.lang.string什麼意思
是後台變量的類型出錯了…拿到的數據不是string類型,系統沒辦法放到string類型的變量中…所以會拋出這個異常,意思一般就是變量類型為java.lang.String類型,XXX變量不能賦給String類型變量
java不兼容的類型java.lang.String是怎麼回事?
你不會把不是String類型的賦值給String的變量了吧
編譯的時候報錯吧,比如:
a.java:4: 不兼容的類型
找到: int
需要: java.lang.String
String s = 1;
^
1 錯誤
java.lang.String的常用的方法
public boolean equals(Object obj)
判斷當前字符串與obj的內容是否相同
public boolean equalsIgnoreCase(String str)
判斷當前字符串與str的內容是否相同,這個方法不會區分大小寫字母的區別
public int length()
返回字符串的長度,即字符的總個數
public String trim()
去掉字符串兩端的空白,包括「空格,\t,\n,\r等控制符」
public String substring(int start,int end)
根據開始和結束的位置,返回當前String的子字符串
public String substring(int start)
從開始位置開始到字符串結束,返回子字符串
public char charAt(int index)
返回指定位置的字符
public int indexOf(String str)
返回子字符串在當前字符串的位置,如果當前字符串不包含子字符串就返回-1
public String concat(String str)
返回一個字符串,內容是當前字符串與str連接而成的。
字符串連接可以簡化寫為String str = str1 + str2;結果與concat方法相同
public boolean startsWith(String str)
判斷當前字符串,是否以str開頭
public boolean endsWith(String str)
判斷當前字符串,是否以str結尾
========================================================
String str = I am + Lingo!;
這樣可以獲得一個內容為I am Lingo!的字符串,在java里可以通過這種簡單的方式實現字符串的連接
。這裡需要注意的是,這個過程實際上生成了三個String對象,I am 和Lingo!先被生成,然後用他
們再創建一個String對象str,str的內容是兩者的總和。所以,使用+進行字符串連接的時候會很耗費資
源,這個時候就需要使用另一個類StringBuffer,它的內容是可以修改的,實際上jvm內部編譯之後,「
用+進行字符串連接」也是用StringBuffer實現的。
String str = I am + Lingo!;
String str = new StringBuffer(I am ).append(Lingo!).toString();
上邊兩個是等價的。
StringBuffer類還提供了許多便利的方法,對字符串進行操作
public void reverse()
反轉字符串
public void append(…)
在字符串最後添加信息
public void insert(int start,…)
在索引位置插入信息
public void delete(int start,int end)
刪除指定範圍的內容
split與replaceAll方法
public String[] split(String regex)
根據分隔符,把字符串切割成字符串數組
public String replace(String regex,String str)
把字符串中所有與regex匹配的部分都替換成str
regex代表「正則表達式」,如果你並不清楚它的原理,很可能會出現問題。
1,3,4.split(,)返回的結果是{1,3,4}這三個字符串組成的數組
1|3|4.split(|)返回的結果卻是{1,|,3,|,4}五個字符串組成的數組
這個問題的原因是由於在「正則表達式」中,「|」是一個有特殊含義的字符,表示「或」,直接使用
split(|)就會把每個字符分開了。如果希望使用|作為分隔符,就需要使用轉義字符。
1|3|4.split(\\|)返回的結果就是{1,3,4}三個字符串組成的數組了
「\|」是正則表達式中代表|的專一字符,但因為在String中「\」不能單獨出現,還需要進行一次轉義
,就變成了「\\|」這種形式。
replaceAll(String regex,String str)也是這種情況
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/254339.html