欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java中的substring()方法使用舉例詳解

 更新時(shí)間:2024年12月23日 09:05:18   作者:音樂學(xué)家方大剛  
這篇文章主要介紹了Java中的substring()方法使用的相關(guān)資料,文中包括其概述、參數(shù)、返回值、使用示例、注意事項(xiàng)、常見用法和總結(jié),通過代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言

在 Java 編程中,字符串(String)操作是非常常見的任務(wù)之一。為了方便開發(fā)者操作字符串,Java 提供了許多內(nèi)置方法,其中 substring() 是一個(gè)非常強(qiáng)大且常用的方法。substring() 方法用于提取字符串中的一個(gè)子字符串,可以根據(jù)需要獲取字符串的任意部分。

1. substring() 方法的概述

substring() 方法屬于 String 類,用于從字符串中提取一個(gè)子字符串。它有兩個(gè)常用的重載版本:

String substring(int beginIndex)
String substring(int beginIndex, int endIndex)

2. substring() 方法的參數(shù)與返回值

beginIndex: 這是起始索引(包括在內(nèi)),表示從該索引開始的字符將包含在返回的子字符串中。索引從 0 開始。

endIndex: (可選)這是結(jié)束索引(不包括在內(nèi)),表示在該索引之前的字符將包含在返回的子字符串中。

返回值: 返回一個(gè)新的字符串,它包含從 beginIndex 開始到 endIndex 之前的所有字符。如果只指定 beginIndex,則返回從該位置開始到字符串末尾的所有字符。

3. substring() 方法的使用示例

示例 1:使用 substring(int beginIndex)

這種形式的 substring() 方法從指定的起始索引提取直到字符串末尾的所有字符。

public class SubstringExample {
    public static void main(String[] args) {
        String str = "Hello, Java!";
        
        // 提取從索引 7 開始的子字符串
        String result = str.substring(7);
        
        System.out.println("結(jié)果: " + result);  // 輸出: "Java!"
    }
}

示例 2:使用 substring(int beginIndex, int endIndex)

這種形式的 substring() 方法提取從 beginIndex 到 endIndex 之間的字符,endIndex 處的字符不包含在結(jié)果中。

public class SubstringExample {
    public static void main(String[] args) {
        String str = "Hello, Java!";
        
        // 提取從索引 7 到 11 之間的子字符串
        String result = str.substring(7, 11);
        
        System.out.println("結(jié)果: " + result);  // 輸出: "Java"
    }
}

4. 注意事項(xiàng)

使用 substring() 方法時(shí),有幾個(gè)重要的注意事項(xiàng):

索引范圍: beginIndex 必須在 0 到 length() 之間,而 endIndex 必須在 beginIndex 到 length() 之間。否則會(huì)拋出 StringIndexOutOfBoundsException 異常。

String str = "Hello, Java!";
String result = str.substring(15);  // 這會(huì)拋出異常,因?yàn)樗饕龇秶?

空字符串: 如果 beginIndex 等于字符串的長(zhǎng)度,substring() 返回一個(gè)空字符串。如果 beginIndex 和 endIndex 相等,也會(huì)返回一個(gè)空字符串。

String str = "Hello, Java!";
String result = str.substring(12, 12);  // 返回空字符串

性能問題: 早期版本的 Java 中,substring() 會(huì)導(dǎo)致原始字符串的內(nèi)存無法釋放,因?yàn)樽幼址匀灰迷甲址淖址麛?shù)組。但從 Java 7 Update 6 開始,這個(gè)問題已經(jīng)被解決了。

5. 常見的用法

提取文件擴(kuò)展名:

String fileName = "example.txt";
String extension = fileName.substring(fileName.lastIndexOf(".") + 1);
System.out.println("文件擴(kuò)展名是: " + extension);  // 輸出: "txt"

提取URL中的域名:

String url = "https://www.example.com/index.html";
String domain = url.substring(url.indexOf("://") + 3, url.indexOf("/", url.indexOf("://") + 3));
System.out.println("域名是: " + domain);  // 輸出: "www.example.com"

去除字符串兩端的括號(hào):

String text = "(Java)";
String result = text.substring(1, text.length() - 1);
System.out.println("去除括號(hào)后的文本: " + result);  // 輸出: "Java"

6. 總結(jié)

substring() 是 Java 中非常有用的字符串處理方法,它使得提取字符串的任意部分變得非常簡(jiǎn)單。通過了解 substring() 方法的使用方式及其注意事項(xiàng),你可以更加靈活地操作字符串,滿足各種實(shí)際開發(fā)需求。

到此這篇關(guān)于Java中的substring()方法使用的文章就介紹到這了,更多相關(guān)Java substring()方法詳解內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Mybatis-Plus 搭建與使用入門(小結(jié))

    Mybatis-Plus 搭建與使用入門(小結(jié))

    Mybatis-Plus(簡(jiǎn)稱MP)是一個(gè) Mybatis 的增強(qiáng)工具,這篇文章主要介紹了Mybatis-Plus 搭建與使用入門(小結(jié)),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-06-06
  • Java之maven打完jar包之后將jar包放到指定位置匯總

    Java之maven打完jar包之后將jar包放到指定位置匯總

    這篇文章主要介紹了Java之maven打完jar包之后將jar包放到指定位置匯總,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • SpringBoot?替換?if?的參數(shù)校驗(yàn)示例代碼

    SpringBoot?替換?if?的參數(shù)校驗(yàn)示例代碼

    Spring?Validation是對(duì)hibernate?validation的二次封裝,用于支持spring?mvc參數(shù)自動(dòng)校驗(yàn),接下來,我們以spring-boot項(xiàng)目為例,介紹Spring?Validation的使用,需要的朋友可以參考下
    2022-12-12
  • java利用反射實(shí)現(xiàn)動(dòng)態(tài)代理示例

    java利用反射實(shí)現(xiàn)動(dòng)態(tài)代理示例

    這篇文章主要介紹了java利用反射實(shí)現(xiàn)動(dòng)態(tài)代理示例,需要的朋友可以參考下
    2014-04-04
  • Java中浮點(diǎn)數(shù)精度問題的解決方法

    Java中浮點(diǎn)數(shù)精度問題的解決方法

    這篇文章給大家介紹了Java中浮點(diǎn)數(shù)精度問題的解決方法,本文給大家介紹的非常詳細(xì),有問題描述有原因分析,非常不錯(cuò),具有參考借鑒價(jià)值,感興趣的朋友一起看看吧
    2016-10-10
  • 關(guān)于SpringBoot中的XA事務(wù)詳解

    關(guān)于SpringBoot中的XA事務(wù)詳解

    這篇文章主要介紹了關(guān)于SpringBoot中的XA事務(wù)詳解,事務(wù)管理可以確保數(shù)據(jù)的一致性和完整性,同時(shí)也可以避免數(shù)據(jù)丟失和沖突等問題。在分布式環(huán)境中,XA?事務(wù)是一種常用的事務(wù)管理方式,需要的朋友可以參考下
    2023-07-07
  • 詳解Java中如何正確書寫單例模式

    詳解Java中如何正確書寫單例模式

    一般單例都是五種寫法:懶漢,餓漢,雙重校驗(yàn)鎖,靜態(tài)內(nèi)部類和枚舉。本文整理了幾種常見的單例寫法,下面跟著小編一起來看下吧
    2017-01-01
  • Java實(shí)例講解反射機(jī)制是怎么一回事

    Java實(shí)例講解反射機(jī)制是怎么一回事

    Java的反射(reflection)機(jī)制是指在程序的運(yùn)行狀態(tài)中,可以構(gòu)造任意一個(gè)類的對(duì)象,可以了解任意一個(gè)對(duì)象所屬的類,可以了解任意一個(gè)類的成員變量和方法,可以調(diào)用任意一個(gè)對(duì)象的屬性和方法
    2022-03-03
  • 文件路徑正確,報(bào)java.io.FileNotFoundException異常的原因及解決辦法

    文件路徑正確,報(bào)java.io.FileNotFoundException異常的原因及解決辦法

    這篇文章主要介紹了文件路徑正確,報(bào)java.io.FileNotFoundException異常的原因及解決辦法的相關(guān)資料,需要的朋友可以參考下
    2016-04-04
  • 教你用Springboot實(shí)現(xiàn)攔截器獲取header內(nèi)容

    教你用Springboot實(shí)現(xiàn)攔截器獲取header內(nèi)容

    項(xiàng)目中遇到一個(gè)需求,對(duì)接上游系統(tǒng)是涉及到需要增加請(qǐng)求頭,請(qǐng)求頭的信息是動(dòng)態(tài)獲取的,需要?jiǎng)討B(tài)從下游拿到之后轉(zhuǎn)給上游,文中非常詳細(xì)的介紹了該需求的實(shí)現(xiàn),需要的朋友可以參考下
    2021-05-05

最新評(píng)論