02_使用API_String

StringBuilder
  • StringBuilder 代表可變字符串對象,相對于是一個容器,它里面裝的字符串是可以改變的,就是用來操作字符串的
  • 好處:StringBuilder 比 String 更適合做字符串的修改操作,效率會更高,代碼也會更簡潔
  • 注意:如果操作字符串較少,或者不需要操作,以及定義字符串變量,還是建議用 String
public class Test {public static void main(String[] args) {StringBuilder s1 = new StringBuilder();  // 對象 s1 當前沒有任何內容,是""空的StringBuilder s2 = new StringBuilder("Jack");  // 對象 s2 當前是 "Jack"// 1. 拼接內容s2.append(666);s2.append("Java");s2.append(true);System.out.println(s2);  // 輸出結果:Jack666Javatrue// 2. 支持鏈式編程s1.append(520).append("Java").append("哈哈哈");System.out.println(s1);  // 輸出結果:520Java哈哈哈// 3. 反轉操作s1.reverse();System.out.println(s1);  // 輸出結果:哈哈哈avaJ025// 4. 返回字符串長度System.out.println(s2.length());  // 15// 5. 把StringBuilder對象,轉換成String類型String s = s1.toString();System.out.println(s2);  // Jack666Javatrue}
}
StringBuffer
  • StringBuffer 的用法與 StringBuilder 是一模一樣的
  • 但是 StringBuilder 是線程不安全的,StringBuffer 是線程安全的
  • StringBuffer 的使用和上面的方法一模一樣,因而此處不再贅述。
StringJoiner
  • StringJoiner 是 JDK 8 才開始有的,跟 StringBuilder 一樣,也是用來操作字符串的,也可以看成是一個容器,創建之后里面的內容是可變的
  • 好處:不僅能提高字符串的操作效率,并且在有些場景下使用它操作字符串,代碼會更簡潔
import java.util.StringJoiner;public class Test {public static void main(String[] args) {StringJoiner s1 = new StringJoiner(",");s1.add("Java1");s1.add("Java2");s1.add("Java3");System.out.println(s1);  // >>> Java1,Java2,Java3StringJoiner s2 = new StringJoiner(",", "{* ", " *}");s2.add("string1");s2.add("string2");s2.add("string3");System.out.println(s2);  // >>> {* string1,string2,string3 *}}
}

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

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

相關文章

MacOS “xxxxx“,已損壞,無法打開,你應該將它移到廢紙簍

在這里插入圖片描述 解決方案 應用程序 - 實用工具中打開終端,輸入命令, sudo xattr -r -d com.apple.quarantine 然后將程序拖放至命令窗口,如下圖:

22. Spring源碼篇之推斷構造方法

簡介 很多時候我們的構造器都不止一個,那么spring怎么選擇的呢,簽名介紹了推斷構造方法的擴展點,可以使用Autowired注解去選擇使用哪個構造器,但是即使這樣也有可能有多個Autowired且required為false的構造器,那么還是…

QLineEdit響應editingFinished實現只響應一次

QLineEdit中editingFinished槽函數會在按下enter時響應兩次,分別是按下enter和失去焦點的時候,為了能讓 QLineEdit只響應其中一次,需定義一個全局變量m_bFlagEnter保存是否enter是否按下,按下后,則在失去焦點的時候做對…

Unity發布IOS后,使用xcode打包報錯:MapFileParser.sh:Permissiondenied

1.錯誤提示 使用xcode打包錯誤提示:/Users/mymac/Desktop/myproject/MapFileParser.sh: Permission denied 2.解決方案 打開控制臺輸入:chmod ax /Users/mymac/Desktop/myproject/MapFileParser.sh。按回車鍵執行,然后重新使用xcode發布程序…

【開源】基于JAVA的在線課程教學系統

項目編號: S 014 ,文末獲取源碼。 \color{red}{項目編號:S014,文末獲取源碼。} 項目編號:S014,文末獲取源碼。 目錄 一、摘要1.1 系統介紹1.2 項目錄屏 二、研究內容2.1 課程類型管理模塊2.2 課程管理模塊2…

機器學習之數據清洗和預處理

目錄 Box_Cox Box_Cox Box-Cox變換是一種用于數據預處理和清洗的方法,旨在使數據更符合統計模型的假設,特別是對于線性回歸模型。這種變換通過調整數據的尺度和形狀,使其更加正態分布。 Box-Cox變換的定義是: y ( λ ) { y λ ? 1 λ , i…

【深度學習】卷積神經網絡(CNN)

一、引子————邊界檢測 我們來看一個最簡單的例子:“邊界檢測(edge detection)”,假設我們有這樣的一張圖片,大小88: 圖片中的數字代表該位置的像素值,我們知道,像素值越大&#…

QQ怎么備份聊天記錄?3個方法教你快速備份!

QQ聊天記錄作為用戶和親人、好友以及同事之間溝通的憑證,可以幫助我們回憶起過去的交流內容。如果我們不小心誤刪了QQ聊天記錄或者更換了新手機,那么這時候就需要備份聊天記錄。qq怎么備份聊天記錄呢?本文將介紹3個簡單方法,幫助您…

MySQL - 4種基本索引、聚簇索引和非聚索引、索引失效情況

目錄 一、索引 1.1、簡單介紹 1.2、索引的分類 1.2.1、主鍵索引 1.2.2、單值索引(單列索引、普通索引) 1.2.3、唯一索引 1.2.4、復合索引 1.2.5、復合索引經典問題 1.3、索引原理 1.3.1、主鍵自動排序 1.3.2、索引的底層原理 1.3.3、B 樹和 B…

創作4周年

🙌秋名山碼民的主頁 😂oi退役選手,Java、大數據、單片機、IoT均有所涉獵,熱愛技術,技術無罪 🎉歡迎關注🔎點贊👍收藏??留言📝 獲取源碼,添加WX 目錄 前言機…

哈希表-set、map

當需要判斷一個元素是否在集合中時,就使用哈希法 散列表(Hash table,也叫哈希表),是根據鍵(Key)而直接訪問在內存存儲位置的數據結構。 哈希表中關鍵碼就是數組的索引下標,然后通過…

Web框架Flask

Web框架Flask Flask簡介第一個Flask應用Flask路由Flask路由變量規則Flask URL 構建Flask重定向Flask靜態文件Flask渲染模板Flask請求對象Flask響應對象Flask CookiesFlask錯誤Flask JSON 格式的 APIFlask SessionFlask 消息閃現Flask日志Flask藍圖Flask視圖Flask Jinja2 模板F…

微信消息提醒

有時候同事沒有打開微信,重要的信息可以設置提醒

app小程序開發的重點在哪里?|企業軟件定制網站建設

app小程序開發的重點在哪里?|企業軟件定制網站建設 App小程序定制開發是近年來快速發展的一項技術服務,隨著移動互聯網的普及和用戶需求的不斷升級,越來越多的企業和個人開始關注和需求定制化的小程序開發。那么,對于app小程序定制…

Springboot_文件下載功能(前端后端)

遇到的問題: 文件下載后文件一直被破壞,無法正常打開文件名亂碼,如圖 剛開始一直在糾結,是不是后端沒有寫對,然后導致下載不能使用 后來搜索了一些資料,發現后端沒什么問題 然后就開始找到其他項目對比…

頭發的方向圖(2D和3D)與合成

首先,我們從一個不受光照限制的環境中拍攝一組輸入圖像,這些圖像包含了頭發的不同視角和姿態。我們對這些圖像進行半自動的分割,將頭發從背景中分離出來,然后使用PMVS ,一種先進的多視角立體算法,來重建一個…

Qt 問題 判斷QTreeWidget的子節點的父節點是否可見

bool JudgeParentItemVisible(QTreeWidgetItem * pLayerItem) {bool bVisible true;QTreeWidgetItem * pParentItem (QTreeWidgetItem *)pLayerItem->parent(); //獲取父節點if (pParentItem ! NULL) //父節點不為空{if (pParentItem->checkState(0) Qt::CheckState::…

廣播組播、本地套接字通信、wireshark、以太網幀格式、三次握手四次揮手

廣播(使用 UDP 套接字) 廣播地址:主機號最大的地址。 廣播:給所在局域網的所有主機發送數據報。(之前的數據報發送方式是單播。) 以下情況中使用廣播: 局域網 搜索協議。 比如家中的智能產品&a…

局域網共享打印機共享,簡單至簡至一鍵處理011bDll等問題

一、電腦系統是否激活(可選) 二、確保主客戶端PC在同一局域網內(可選) 可以通過ping 目標地址 如ping 192.168.1.202;看是否可以正常通信 下面是惠普類型打印機共享問題關鍵(文本記得保存) …

Redisson 分布式鎖的最佳實踐

Redisson 分布式鎖的最佳實踐 第一、添加依賴第二、添加redisson配置類第三、添加測試類測試結果擴展知識redisson鎖中lock方法和tryLock方法有什么區別鎖續約 注意事項 引言 在現代分布式系統中,處理并發問題是至關重要的。分布式鎖是解決這類問題的關鍵工具之一。…