Java開發筆記(三十六)字元串的常用方法

来源:https://www.cnblogs.com/pinlantu/archive/2018/12/12/10111426.html
-Advertisement-
Play Games

不管是給字元串賦值,還是對字元串格式化,都屬於往字元串填充內容,一旦內容填充完畢,則需開展進一步的處理。譬如一段Word文本,常見的加工操作就有查找、替換、追加、截取等等,按照字元串的處理結果異同,可將這些操作方法歸為三大類,分別說明如下。一、判斷字元串是否具備某種特征該類方法主要用來判斷字元串是否 ...


不管是給字元串賦值,還是對字元串格式化,都屬於往字元串填充內容,一旦內容填充完畢,則需開展進一步的處理。譬如一段Word文本,常見的加工操作就有查找、替換、追加、截取等等,按照字元串的處理結果異同,可將這些操作方法歸為三大類,分別說明如下。
一、判斷字元串是否具備某種特征
該類方法主要用來判斷字元串是否滿足某種條件,返回true代表條件滿足,返回false代表條件不滿足。判斷方法的調用代碼示例如下:

		String hello = "Hello World. ";
		// isEmpty方法判斷該字元串是否為空串
		boolean isEmpty = hello.isEmpty();
		System.out.println("isEmpty = "+isEmpty);
		// equals方法判斷該字元串是否與目標串相等
		boolean equals = hello.equals("你好");
		System.out.println("equals = "+equals);
		// startsWith方法判斷該字元串是否以目標串開頭
		boolean startsWith = hello.startsWith("Hello");
		System.out.println("startsWith = "+startsWith);
		// endsWith方法判斷該字元串是否以目標串結尾
		boolean endsWith = hello.endsWith("World");
		System.out.println("endsWith = "+endsWith);
		// contains方法判斷該字元串是否包含了目標串
		boolean contains = hello.contains("or");
		System.out.println("contains = "+contains);

 

運行以上的判斷方法代碼,得到以下的日誌信息:

isEmpty = false
equals = false
startsWith = true
endsWith = false
contains = true

  

二、在字元串內部進行條件定位
該類方法與字元串的長度有關,要麼返回指定位置的字元,要麼返回目標串的所在位置。定位方法的調用代碼如下所示:

		String hello = "Hello World. ";
		// length方法返回該字元串的長度
		int length = hello.length();
		System.out.println("length = "+length);
		// charAt方法返回該字元串在指定位置的字元
		char first = hello.charAt(0);
		System.out.println("first = "+first);
		// indexOf方法返回目標串在該字元串中第一次找到的位置
		int index = hello.indexOf("l");
		System.out.println("index = "+index);
		// lastIndexOf方法返回目標串在該字元串中最後一次找到的位置
		int lastIndex = hello.lastIndexOf("l");
		System.out.println("lastIndex = "+lastIndex);

 

運行以上的定位方法代碼,得到以下的日誌信息:

length = 13
first = H
index = 2
lastIndex = 9

  

三、根據某種規則修改字元串的內容
該類方法可對字元串進行局部或者全部的修改,並返回修改之後的新字元串。內容變更方法的調用代碼舉例如下:

		String hello = "Hello World. ";
		// toLowerCase方法返迴轉換為小寫字母的字元串
		String lowerCase = hello.toLowerCase();
		System.out.println("lowerCase = "+lowerCase);
		// toUpperCase方法返迴轉換為大寫字母的字元串
		String upperCase = hello.toUpperCase();
		System.out.println("upperCase = "+upperCase);
		// trim方法返回去掉首尾空格後的字元串
		String trim = hello.trim();
		System.out.println("trim = "+trim);
		// concat方法返回在末尾添加了目標串之後的字元串
		String concat = hello.concat("Fine, thank you.");
		System.out.println("concat = "+concat);
		// substring方法返回從指定位置開始截取的子串。只有一個輸入參數的substring,從指定位置一直截取到源串的末尾
		String subToEnd = hello.substring(6);
		System.out.println("subToEnd = "+subToEnd);
		// 有兩個輸入參數的substring方法,返回從開始位置到結束位置中間截取的子串
		String subToCustom = hello.substring(6, 9);
		System.out.println("subToCustom = "+subToCustom);
		// replace方法返回目標串替換後的字元串
		String replace = hello.replace("l", "L");
		System.out.println("replace = "+replace);

 

運行以上的內容變更方法代碼,得到以下的日誌信息:

lowerCase = hello world. 
upperCase = HELLO WORLD. 
trim = Hello World.
concat = Hello World. Fine, thank you.
subToEnd = World. 
subToCustom = Wor
replace = HeLLo WorLd. 

  

更多Java技術文章參見《Java開發筆記(序)章節目錄


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 過濾器模式 一、什麼是過濾器模式   過濾器模式(Filter Pattern),這種模式允許開發人員使用不同的標準來過濾一組對象,通過邏輯運算以解耦的方式把它們連接起來。這種類型的設計模式屬於結構型模式,它結合多個標準來獲得單一標準。 二、具體實現 1、主要角色 過濾對象:需要 ...
  • 一、簡介 以下引用自百度百科 Matplotlib 是一個 Python 的 2D繪圖庫,它以各種硬拷貝格式和跨平臺的互動式環境生成出版質量級別的圖形 。 通過 Matplotlib,開發者可以僅需要幾行代碼,便可以生成繪圖,直方圖,功率譜,條形圖,錯誤圖,散點圖等。 二、流程 1. 明確要研究的問 ...
  • 本文將介紹使用框架mybatis開發原始Dao層來對一個對資料庫進行增刪改查的案例。 本次使用的mybatis版本為mybatis-3.2.7,開發工具為eclipse,資料庫為mysql,jdk版本jdk1.8.0_151。 1、首先,使用eclipse新建一個java工程,在lib目錄下加入my ...
  • 在c++中我們很容易遇到字元串的分割處理問題,這種問題通常比較容易,但由於我比較菜,花費了一定時間去思考一個和字元串相關的題,該題的大概思路是利用取模運算後,將得到的單個字元進行分析,主要考察到了字元串的合併操作,明日計劃30學習c++。 ...
  • ss -l ...
  • Python基礎知識(30):圖形界面(Ⅰ) Python支持多種圖形界面的第三方庫:Tk、wxWidgets、Qt、GTK等等 Tkinter可以滿足基本的GUI程式的要求,此次以用Tkinter為例進行GUI編程 一、編寫一個GUI版本的“Hello, world!” 本人使用的軟體是pycha ...
  • CDQ分治小結 warning:此文僅用博主複習使用,初學者看的話後果自負。。 複習的時候才發現以前根本就沒寫過這種東西的總結,簡單的扯一扯 cdq分治的經典應用就是解決偏序問題 比如最經典的三維偏序問題 給出$n$個數,每個數$i$,有三個屬性$a_i, b_i, c_i$,現在我們要統計對於每個 ...
  • 說起裝飾器我們可能已經很熟悉了(不瞭解的可以查看python基礎學習——裝飾器),隨手就可以寫一個簡單的裝飾器 def decorator(func): def inner(*args, **kwargs): # 執行函數前做點事 result = func(*args, **kwargs) # 執 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...