Java 中String類的常用方法

Java 中的 String 類提供了豐富的方法用于字符串操作,以下是最常用的一些方法分類總結:

一、獲取字符串信息

  1. length():返回字符串長度(字符個數)

    String s = "hello";
    int len = s.length(); // len = 5
    
  2. charAt(int index):返回指定索引(從0開始)的字符

    char c = "hello".charAt(1); // c = 'e'
    
  3. indexOf(String str):返回子串 str 首次出現的索引,未找到返回 -1

    int idx = "hello world".indexOf("lo"); // idx = 3
    
  4. lastIndexOf(String str):返回子串 str 最后出現的索引

    int idx = "ababa".lastIndexOf("aba"); // idx = 2
    

二、字符串比較

  1. equals(Object obj):判斷兩個字符串內容是否完全相同(區分大小寫)

    "abc".equals("ABC"); // false
    
  2. equalsIgnoreCase(String str):忽略大小寫比較內容

    "abc".equalsIgnoreCase("ABC"); // true
    
  3. compareTo(String str):按字典順序比較,返回差值(正數:當前串大;負數:參數串大;0:相等)

    "apple".compareTo("banana"); // 負數('a' < 'b')
    

三、字符串截取與拆分

  1. substring(int beginIndex):從 beginIndex 截取到末尾

    "hello".substring(2); // "llo"
    
  2. substring(int beginIndex, int endIndex):截取 [beginIndex, endIndex) 范圍的子串(左閉右開)

    "hello".substring(1, 4); // "ell"
    
  3. split(String regex):按正則表達式拆分字符串,返回字符串數組

    String[] parts = "a,b,c".split(","); // ["a", "b", "c"]
    

四、字符串修改(注意:String 是不可變的,以下方法返回新字符串)

  1. toLowerCase() / toUpperCase():轉為全小寫 / 全大寫

    "Hello".toLowerCase(); // "hello"
    "Hello".toUpperCase(); // "HELLO"
    
  2. trim():去除首尾空白字符(空格、換行、制表符等)

    "  hello  ".trim(); // "hello"
    
  3. replace(char oldChar, char newChar):替換所有指定字符

    "hello".replace('l', 'x'); // "hexxo"
    
  4. replace(String oldStr, String newStr):替換所有指定子串

    "hello world".replace("world", "java"); // "hello java"
    
  5. concat(String str):拼接字符串(等價于 + 運算符)

    "hello".concat(" world"); // "hello world"
    

五、判斷字符串特性

  1. startsWith(String prefix):判斷是否以指定前綴開頭

    "hello".startsWith("he"); // true
    
  2. endsWith(String suffix):判斷是否以指定后綴結尾

    "hello.txt".endsWith(".txt"); // true
    
  3. isEmpty():判斷字符串是否為空(長度為0)

    "".isEmpty(); // true
    "a".isEmpty(); // false
    
  4. contains(CharSequence s):判斷是否包含指定子串

    "hello".contains("ll"); // true
    

六、其他常用方法

  1. toCharArray():將字符串轉為字符數組

    char[] arr = "hello".toCharArray(); // ['h','e','l','l','o']
    
  2. valueOf(xxx):靜態方法,將其他類型轉為字符串(常用)

    String.valueOf(123); // "123"
    String.valueOf(true); // "true"
    
  3. format(String format, Object... args):靜態方法,格式化字符串(類似 printf

    String.format("Name: %s, Age: %d", "Tom", 20); // "Name: Tom, Age: 20"
    

注意事項

  • String 是不可變對象,所有修改方法都會返回新的字符串,原字符串不變。
  • 頻繁修改字符串時,建議使用 StringBuilderStringBuffer 以提高效率。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/96517.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/96517.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/96517.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【記錄】Docker|Docker內部訪問LInux主機上的Ollama服務

部分內容參考自&#xff1a;使得 docker 容器內部可以訪問宿主機的 ollama 服務_docker 訪問 ollama-CSDN 博客&#xff0c;補充添加了更多的細節&#xff0c;也補充了一個更加簡單的方案。 我測試的系統版本&#xff1a;Ubuntu 24.04.2 LTS noble&#xff0c;查看方式是指令 l…

數據庫物理外鍵與邏輯外鍵全解析

一、核心概念 1. 物理外鍵 (Physical Foreign Key) 物理外鍵是數據庫層面通過語法明確創建的外鍵約束。它是由數據庫管理系統&#xff08;DBMS&#xff09;本身&#xff08;如 MySQL, PostgreSQL, Oracle&#xff09;來強制實現的。 它是什么&#xff1a;數據庫表結構的一部分&…

Vue3入門到實戰,最新版vue3+TypeScript前端開發教程,創建Vue3工程,筆記03

筆記03 一、創建Vue3項目 1.1、創建方式 使用vue-cli創建使用vite創建&#xff08;推薦&#xff09;Vue3官網創建項目文檔 兩種創建方式&#xff0c;推薦使用第二種。vue-cli是基于webpack實現的&#xff0c;vite是新一代前端構建工具。 2.1、vue3項目結構

企業如何利用群暉 NAS 構建高效數據備份與容災體系

在數字化轉型的過程中&#xff0c;企業數據已成為核心資產。然而&#xff0c;勒索病毒攻擊、硬件故障、操作失誤以及自然災害等風險&#xff0c;都可能導致數據丟失甚至業務中斷。如何構建一個高效、安全、可恢復的數據備份與容災體系&#xff0c;已成為企業 IT 管理的關鍵課題…

關于在pycharm終端連接服務器

1、先為每個項目創建一個虛擬環境2、使用命令下載torchpip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple安裝之后發現安裝在了本地&#xff0c;我需要安裝到服務器里面&#xff0c;此時可以把本地的刪除&#xff0c;因為是默認安裝到c盤&#xff0c;除非你指定路…

CSS 繼承 (Inheritance)

一、核心概念CSS 繼承是指某些 CSS 屬性如果被設置在父元素上&#xff0c;其值會自動流向&#xff08;應用到&#xff09;其所有后代元素&#xff08;子、孫元素等&#xff09;的特性。核心價值&#xff1a;通過將樣式聲明應用于祖先元素&#xff0c;可以避免在所有后代元素上重…

UGUI源碼剖析(15):Slider的運行時邏輯與編輯器實現

UGUI源碼剖析&#xff08;第十五章&#xff09;&#xff1a;Slider的運行時邏輯與編輯器實現 在之前的章節中&#xff0c;我們已經深入了UGUI眾多核心組件的運行時源碼。然而&#xff0c;一個完整的Unity組件&#xff0c;通常由兩部分構成&#xff1a;定義其在游戲世界中行為的…

【Python】爬蟲html提取內容基礎,bs4

前言 BeautifulSoup也就是bs4,里面功能其實有很多&#xff0c;不過對于爬蟲而言主要掌握一下幾塊就可以了 怎么找標簽&#xff1f;找到標簽后怎么獲取屬性&#xff0c;怎么獲取文本內容如何通過找到的標簽繼續獲取子標簽 安裝 pip install bs4案例 對于找標簽來說&#xf…

組件庫打包工具選型(npm/pnpm/yarn)的區別和技術考量

組件庫打包工具選型&#xff1a;npm/pnpm/yarn的區別與技術考量 一、核心差異概述 組件庫打包工具的選擇&#xff0c;本質是在??依賴管理效率??、??磁盤空間占用??、??Monorepo支持??、??安裝速度??及??幽靈依賴風險??之間做權衡。npm作為Node.js默認工具…

新型APT組織“嘈雜熊“針對哈薩克斯坦能源部門發起網絡間諜活動

感染鏈圖示 | 圖片來源&#xff1a;Seqrite實驗室APT研究團隊 Seqrite實驗室APT研究團隊近日發布了一份深度分析報告&#xff0c;披露了一個自2025年4月起活躍的新型威脅組織"嘈雜熊"(Noisy Bear)。該組織主要針對哈薩克斯坦石油天然氣行業&#xff0c;攻擊手法結合…

OpenCV 圖像直方圖

目錄 一、什么是圖像直方圖&#xff1f; 關鍵概念&#xff1a;BINS&#xff08;區間&#xff09; 二、直方圖的核心作用 三、OpenCV 計算直方圖&#xff1a;calcHist 函數詳解 1. 函數語法與參數解析 2. 基礎實戰&#xff1a;計算灰度圖直方圖 代碼實現 結果分析 3. 進…

Firefox Window 開發流程(四)

1 引言 在進行 Firefox 瀏覽器的二次開發、內核研究或自定義構建之前&#xff0c;最重要的步驟就是拉取源碼并進入 Mozilla 官方提供的開發引導模式。這不僅是所有定制工作的起點&#xff0c;同時也決定了后續開發環境的穩定性與可維護性。本文將從源碼獲取、工具使用、引導腳…

mybatis plus 使用wrapper輸出SQL

在MyBatis-Plus中&#xff0c;Wrapper對象用于構建復雜的查詢條件。雖然MyBatis-Plus本身沒有直接提供從Wrapper對象獲取完整SQL語句的方法&#xff0c;但你可以通過一些間接的方式來獲取生成的SQL片段。以下是如何使用MyBatis-Plus的Wrapper來獲取SQL片段的步驟&#xff1a;?…

第1章:操作系統和計算機網絡

1. 操作系統和計算機網絡組成目標概述1.1. 核心知識操作系統和網絡知識很龐大&#xff0c;大多內容枯燥無味&#xff0c;主功最常用的&#xff0c;符合2/8原則。操作系統&#xff1a;內核、性能、磁盤IO、內存、CPU進程、線程、文件、中斷計算機網絡&#xff1a;OSI七層模型、T…

day27|前端框架學習

1、驗證。前后端連接&#xff0c;authentication2、action&#xff0c;在pinia&#xff0c;管理狀態&#xff0c;處理異步操作&#xff08;API/Firebase&#xff09;。methods。在vue組件&#xff0c;處理組件內部邏輯3、滑動窗口&#xff0c;能有大致思路&#xff0c;但是自己…

單片機啟動文件——數據段重定位,BSS段清零

目錄重定位概念的引入一、數據段重定位1.作用&#xff1a;2.目的&#xff1a;3.自己模擬代碼二、BSS段清零1.作用&#xff1a;2.目的&#xff1a;3.自己模擬代碼三&#xff0c;實現原理重定位概念的引入 單片機中內存段的詳細介紹 在單片機中內存分為了很多不同的區域&#xf…

QT(3)

四、基本組件1. Designer設計師&#xff08;掌握&#xff09;Qt Designer 是 Qt 提供的可視化界面設計工具&#xff0c;支持通過拖拽組件快速構建 GUI 界面&#xff0c;生成的界面文件以 .ui格式保存&#xff08;基于 XML 的標簽語言&#xff09;。??核心功能??&#xff1a…

常用注解:@PostMapping、@RequestBody、@Autowired、@Service、@Mapper

1. PostMapping作用&#xff1a;將方法綁定到 HTTP POST 請求的特定路徑上用法&#xff1a;PostMapping("/login") // 綁定到 POST /login PostMapping("/employees") // 綁定到 POST /employees PostMapping("/users/{id}") …

SoC日志管理

目錄 一、汽車控制器中日志的核心類型 二、日志管理的核心環節與策略 1. 日志采集:確保“全面且不冗余” 2. 日志存儲:平衡“可靠性”與“存儲成本” 3. 日志安全:防止“篡改與泄露” 4. 日志生命周期:符合“法規與成本” 5. 日志工具與實現 三、汽車場景的特殊約束與應對 …

橫評五款開源多智能體框架,AI高手都在用哪個?下一款Manus、Cursor、Devin,誰能撐起來?

Agent 成為共識的速度非常快。但今年 Agent 的真正轉折點在于&#xff1a;多智能體。 從科研自動化到任務編排&#xff0c;從自動開淘寶店到 Vibe 一切&#xff0c;從 AI 瀏覽器到今天的 ChatGPT Agent&#xff0c;一切都是多智能體的味道。 但要真正搭建一個多智能體&#x…