Java求字符串長度的方法舉例
方法介紹
在 Java 中,要獲取字符串的長度,可以使用 String 類的 length() 方法
其語法格式:字符串名.length();
返回的值是int類型的長度值。
舉例:
String str1 = "我是一個字符串";
System.out.println("我是一個字符串".length());//7
System.out.println(str1.length());//7
String str2 = "我是另一個字符串";
int str2Length1 = str2.length();
int str2Length2 = "我是另一個字符串".length();
System.out.println(str2Length1);//8
System.out.println(str2Length2);//8
使用場景舉例
1.例如現(xiàn)在接收到了一串字符串,可能接收到的是正常的字符串,也有可能是空字符串,這時候就需要判斷下字符串是否存在值,就可以使用字符串長度>0進(jìn)行操作。
因為字符串長度大于0就代表了字符串存在值嘛
if (str.length()>0){
//進(jìn)行操作字符串
}
假設(shè)不進(jìn)行判斷直接使用的話,則有可能會出現(xiàn)報錯。
2.例如現(xiàn)在要截取字符串,截取第三位到倒數(shù)第二位,則可以這樣截取
str.substring(2,str.length()-2)
String str1 = "臺詞:下蛋公雞,公雞中的戰(zhàn)斗機,歐耶"; String substring = str1.substring(2, str1.length() - 3); System.out.println(substring);//:下蛋公雞,公雞中的戰(zhàn)斗機
但是在編寫的時候也要預(yù)測一下,不然截取的參數(shù)中第一個參數(shù)比第二個參數(shù)大會引發(fā)異常
java.lang.StringIndexOutOfBoundsException
附:java中判斷字符串實際長度(中文2個字符,英文1個字符)的方法,包含中英文符號
介紹
數(shù)據(jù)庫中很多字段都會限制長度,為了方便用戶使用,在前端界面給出限制長度的提示,看網(wǎng)上很多寫的獲取字符串長度都沒有包含中英文符號的,導(dǎo)致獲取到的長度不準(zhǔn)確。
Java中判斷字符串的編碼有兩種思路:
1、根據(jù)byte的長度判斷,英文的字母和標(biāo)點符號都是一個byte,且值在0-255之間
2、根據(jù)中文的Unicode取值范圍判斷,這個就是把所有的范圍都包含,才能判斷正確,參考unicode中文范圍
下面主要用第一種方式實現(xiàn)
測試代碼
/**
* 測試字符串字符長度
*/
public static void main(String[] args) {
String str = "(集2)上藥華,西(四川),";
System.out.println("字符串 \"" + str + "\", 字符串長度為:" + str.length()
+ " ,實際長度為:" + getStringLengthByByte(str));
}
/**
* 返回字符串的實際長度
*/
public static int getStringLengthByByte(String value) {
if (StringUtils.isEmpty(value)) {
return 0;
}
int valueLength = 0;
for (int i=0; i < value.length(); i++) {
char temp = value.charAt(i);
if ((temp + "").getBytes().length == 1) {
valueLength += 1;
} else {
valueLength += 2;
}
}
return valueLength;
} 輸出結(jié)果
字符串 "(集2)上藥華,西(四川),", 字符串長度為:14 ,實際長度為:24
總結(jié)
到此這篇關(guān)于Java求字符串長度的文章就介紹到這了,更多相關(guān)Java求字符串長度內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot整合Spring?Boot?Admin實現(xiàn)服務(wù)監(jiān)控的方法
這篇文章主要介紹了SpringBoot整合Spring?Boot?Admin實現(xiàn)服務(wù)監(jiān)控,內(nèi)容包括Server端服務(wù)開發(fā),Client端服務(wù)開發(fā)其中Spring Boot Admin還可以對其監(jiān)控的服務(wù)提供告警功能,如服務(wù)宕機時,可以及時以郵件方式通知運維人員,感興趣的朋友跟隨小編一起看看吧2022-03-03
Kotlin語法學(xué)習(xí)-變量定義、函數(shù)擴展、Parcelable序列化等簡單總結(jié)
這篇文章主要介紹了Kotlin語法學(xué)習(xí)-變量定義、函數(shù)擴展、Parcelable序列化等簡單總結(jié)的相關(guān)資料,需要的朋友可以參考下2017-05-05
mybatisplus如何解決分頁最多500條數(shù)據(jù)
這篇文章主要介紹了mybatisplus如何解決分頁最多500條數(shù)據(jù)的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07
解決Eclipse打開.java文件異常,提示用系統(tǒng)工具打開的問題
這篇文章主要介紹了解決Eclipse打開.java文件異常,提示用系統(tǒng)工具打開的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01
SpringBoot?整合?ShardingSphere4.1.1實現(xiàn)分庫分表功能
ShardingSphere是一套開源的分布式數(shù)據(jù)庫中間件解決方案組成的生態(tài)圈,它由Sharding-JDBC、Sharding-Proxy和Sharding-Sidecar(計劃中)這3款相互獨立的產(chǎn)品組成,本文給大家介紹SpringBoot?整合?ShardingSphere4.1.1實現(xiàn)分庫分表,感興趣的朋友一起看看吧2023-12-12

