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進行操作。
因為字符串長度大于0就代表了字符串存在值嘛
if (str.length()>0){ //進行操作字符串 }
假設(shè)不進行判斷直接使用的話,則有可能會出現(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)致獲取到的長度不準確。
Java中判斷字符串的編碼有兩種思路:
1、根據(jù)byte的長度判斷,英文的字母和標點符號都是一個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)文章
在IDEA中配置tomcat并創(chuàng)建tomcat項目的圖文教程
這篇文章主要介紹了在IDEA中配置tomcat并創(chuàng)建tomcat項目的圖文教程,需要的朋友可以參考下2020-07-07Spring Security使用權(quán)限注解實現(xiàn)精確控制
在現(xiàn)代的應(yīng)用系統(tǒng)中,權(quán)限管理是確保系統(tǒng)安全性的重要環(huán)節(jié),Spring Security作為Java世界最為普及的安全框架,提供了強大而靈活的權(quán)限控制功能,這篇文章將深入探討Spring Security使用權(quán)限注解實現(xiàn)精確控制,需要的朋友可以參考下2024-12-12SpringMVC使用MultipartFile實現(xiàn)文件上傳
這篇文章主要為大家詳細介紹了SpringMVC使用MultipartFile實現(xiàn)文件上傳功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-04-04Java+EasyExcel實現(xiàn)文件的導(dǎo)入導(dǎo)出
在項目中我們常常需要Excel文件的導(dǎo)入與導(dǎo)出,手動輸入相對有些繁瑣,所以本文教大家如何在Java中輕松導(dǎo)入與導(dǎo)出Excel文件,感興趣的可以學(xué)習(xí)一下2021-12-12Spring+Quartz配置定時任務(wù)實現(xiàn)代碼
這篇文章主要介紹了Spring+Quartz配置定時任務(wù)實現(xiàn)代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-04-04