java中字符串常見(jiàn)的方法及總結(jié)
java字符串常見(jiàn)的方法
字符串的比較
1.equals()方法:常用于比較兩個(gè)字符串是否相等,返回值類(lèi)型是boolean,參數(shù)是Object類(lèi)
public class test { ?? ?public static void main(String[] args) { ?? ??? ?String n1 = "saf"; ?? ??? ?String n2 = "saf"; ?? ??? ?System.out.println(n1.equals(n2)); // true ?? ?} }
字符串的搜索
1.indexOf()方法:使用indexOf方法可以從字符串的首部進(jìn)行搜索,當(dāng)前字符串中指定子字符串的下標(biāo)位置,返回值為int類(lèi)型,如果存在,則返回子字符串的下標(biāo)位置。如果不存在,則返回-1。
"Hello".indexOf("l"); // 2
2.lastIndexOf()方法:lastIndexOf()方法是從字符串的尾部進(jìn)行搜索,返回值與indexOf()方法一致
"Hello".lastIndexOf("l"); // 3
3.startsWith()方法:用于判斷字符串是否以指定字符串開(kāi)頭,返回值為boolean類(lèi)型
"Hello".startsWith("He"); // true
4.endWith()方法:用于判斷字符串是否以指定字符串結(jié)尾,返回值為boolean類(lèi)型
"Hello".endsWith("lo"); // true
5.contains()方法:用于查找當(dāng)前字符串中是否存在指定子字符串,返回值為boolean類(lèi)型
"Hello".contains("lo"); // true
截取子字符串
1.substring()方法:使用substring()方法可以從當(dāng)前字符串中,截取指定下標(biāo)區(qū)間的子字符串,參數(shù)是int,返回值是String類(lèi)型
"大漠孤煙直".substring(2); // 孤煙直 "大漠孤煙直".substring(0,2); // 大漠
去除首尾空白字符串
1.trim()方法:trim()方法可以移除字符串首尾空白字符,空白字符包括空格,\t,\n,\r.無(wú)參數(shù),返回值類(lèi)型是 String。
" ?\tHello\r\n ".trim(); // 返回 "Hello"
替換字符串
1.replace()方法:根據(jù)字符或字符串替換
String s = "hello"; s.replace('l', 'w'); // "hewwo",所有字符'l'被替換為'w' s.replace("ll", "~~"); // "he~~o",所有子串"ll"被替換為"~~"
2.replaceAll()方法:通過(guò)正則表達(dá)式,把匹配的子字符串統(tǒng)一替換
String s = "A,,B;C ,D"; s.replaceAll("[\\,\\;\\s]+", ","); // "A,B,C,D"
分割字符串
1.split()方法:通過(guò)正則表達(dá)式傳入值,參數(shù)值為字符串類(lèi)型,返回值類(lèi)型是字符串?dāng)?shù)組
String s = "A,B,C,D"; String[] ss = s.split("\\,"); // {"A", "B", "C", "D"}
拼接字符串
1.join()方法:拼接字符串使用靜態(tài)方法join(),他用指定的字符串連接字符串?dāng)?shù)組
String[] arr = {"A", "B", "C"}; String s = String.join("***", arr); // "A***B***C"
格式化字符串
1.format()方法:fomat()靜態(tài)方法,可以傳入其他參數(shù),替換占位符,然后生成新的字符串。參數(shù)是字符串和動(dòng)態(tài)參數(shù),返回值是字符串類(lèi)型
String s = "Hi %s, your score is %d!"; System.out.println(s.format("Alice", 80)); // 字符串對(duì)象調(diào)用 System.out.println(String.format("Hi %s, your score is %.2f!", "Bob", 59.5)); // 字符串類(lèi)調(diào)用
類(lèi)型轉(zhuǎn)換
1valueOf()方法:是靜態(tài)方法,可以把任意基本類(lèi)型或引用類(lèi)型轉(zhuǎn)換為字符串,這是一個(gè)重載方法,編譯器會(huì)根據(jù)參數(shù)自動(dòng)選擇合適的方法。返回值是String類(lèi)型
String.valueOf(123); // "123" String.valueOf(45.67); // "45.67" String.valueOf(true); // "true" String.valueOf(new Object()); // 類(lèi)似java.lang.Object@636be97c
2.parseInt()方法:把字符串轉(zhuǎn)為int類(lèi)型,參數(shù)是String類(lèi)型,返回值是int類(lèi)型
int n1 = Integer.parseInt("123"); // 123 int n2 = Integer.parseInt("ff", 16); // 按十六進(jìn)制轉(zhuǎn)換,255
3.parseBoolean()方法:把字符串轉(zhuǎn)為boolean類(lèi)型,參數(shù)是int類(lèi)型,返回值是boolean類(lèi)型
boolean b1 = Boolean.parseBoolean("true"); // true boolean b2 = Boolean.parseBoolean("FALSE"); // false
轉(zhuǎn)換為char[]字符數(shù)組
1.String和char[]類(lèi)型可以互相轉(zhuǎn)化,方法是
char[] cs = "Hello".toCharArray(); // String -> char[] String s = new String(cs); // char[] -> String
修改char[]的時(shí)候,String里面的值不會(huì)變,因?yàn)閚ew String() 的時(shí)候指向了一個(gè)新的內(nèi)存空間
char[] cs = "Hello".toCharArray(); String s = new String(cs); System.out.println(s); cs[0] = 'X'; System.out.println(s);
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
淺談Java中的重載,重寫(xiě),多態(tài),靜態(tài)綁定、動(dòng)態(tài)綁定
這篇文章主要介紹了淺談Java中的重載,重寫(xiě),多態(tài),靜態(tài)綁定、動(dòng)態(tài)綁定,具有一定借鑒價(jià)值2018-01-01Java?棧與隊(duì)列實(shí)戰(zhàn)真題訓(xùn)練
在編寫(xiě)程序的時(shí)候,對(duì)于棧與隊(duì)列的應(yīng)用需要熟練的掌握,這樣才能夠確保寫(xiě)出來(lái)的代碼有質(zhì)量。本文小編就以幾個(gè)題目詳細(xì)說(shuō)說(shuō)Java中的棧與隊(duì)列,需要的朋友可以參考一下2022-04-04Java判斷數(shù)字位數(shù)的方法總結(jié)
本文給大家整理了Java判斷數(shù)字位數(shù)的兩種常用方法,對(duì)此有興趣的可以跟著小編一起學(xué)習(xí)下。2018-02-02mybatis多表查詢(xún)的實(shí)現(xiàn)(xml方式)
本文主要介紹了mybatis多表查詢(xún)的實(shí)現(xiàn)(xml方式),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03Java形參和實(shí)參的實(shí)例之Integer類(lèi)型與Int類(lèi)型用法說(shuō)明
這篇文章主要介紹了Java形參和實(shí)參的實(shí)例之Integer類(lèi)型與Int類(lèi)型用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-10-10SpringBoot2零基礎(chǔ)到精通之?dāng)?shù)據(jù)庫(kù)專(zhuān)項(xiàng)精講
SpringBoot是一種整合Spring技術(shù)棧的方式(或者說(shuō)是框架),同時(shí)也是簡(jiǎn)化Spring的一種快速開(kāi)發(fā)的腳手架,本篇我們來(lái)學(xué)習(xí)如何連接數(shù)據(jù)庫(kù)進(jìn)行操作2022-03-03Mybatis動(dòng)態(tài)SQL之if、choose、where、set、trim、foreach標(biāo)記實(shí)例詳解
動(dòng)態(tài)SQL就是動(dòng)態(tài)的生成SQL。接下來(lái)通過(guò)本文給大家介紹Mybatis動(dòng)態(tài)SQL之if、choose、where、set、trim、foreach標(biāo)記實(shí)例詳解的相關(guān)知識(shí),感興趣的朋友一起看看吧2016-09-09SpringCloud使用Feign實(shí)現(xiàn)服務(wù)調(diào)用
這篇文章主要為大家詳細(xì)介紹了SpringCloud使用Feign實(shí)現(xiàn)服務(wù)調(diào)用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-04-04