首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

Java String 類常用操作全攻略

     編輯:Java 綜合教學

Java String 類常用操作全攻略

String 是 Java 中使用頻率最高的類,理解其不可變特性與豐富 API 對高效開發至關重要。本文分類整理獲取判斷、轉換、替換、切割、子串、大小寫/去空格/比較等核心操作,並附帶代碼示例。

一、String 概述

  • 不可變性:String 對象一旦創建,值不能改變,所有修改操作均返回新對象。
  • equals() 比較內容,== 比較引用。
  • String s1 = "abc"(常量池 1 個對象),String s2 = new String("abc")(堆 + 常量池共 2 個對象)。

二、獲取與判斷

方法說明
int length()字符長度
char charAt(int index)指定位置字符
int indexOf(int ch)首次出現位置
int indexOf(String str, int fromIndex)從指定位置查找子串
int lastIndexOf(String str)最後一次出現位置
boolean contains(CharSequence s)是否包含子串
boolean isEmpty()是否為空串
boolean startsWith(String prefix)是否以指定前綴開頭
boolean endsWith(String suffix)是否以指定後綴結尾
boolean equals(Object anObject)內容比較
boolean equalsIgnoreCase(String anotherString)忽略大小寫比較

示例

String str = "abcdeakpf";
System.out.println(str.length());        // 9
System.out.println(str.charAt(4));       // e
System.out.println(str.indexOf('a', 3)); // 5
System.out.println(str.lastIndexOf("a")); // 5

String file = "ArrayDemo.java";
System.out.println(file.startsWith("Array")); // true
System.out.println(file.endsWith(".java"));   // true
System.out.println(file.contains("Demo"));    // true

三、轉換操作

字符數組 ⇄ String

char[] arr = {'a','b','c','d','e','f'};
String s = new String(arr, 1, 3); // "bcd"
char[] chs = s.toCharArray();     // 反向轉換

字節數組 ⇄ String(支持編碼)

byte[] bytes = "中文".getBytes("UTF-8");
String str = new String(bytes, "UTF-8");

基本類型 → String

String.valueOf(123);    // "123"
String.valueOf(45.67);  // "45.67"

四、替換、切割、子串

方法說明
replace(char old, char new)字符替換
replace(CharSequence target, CharSequence replacement)子串替換
split(String regex)正則切割返回數組
substring(int begin)從 begin 到末尾
substring(int begin, int end)[begin, end) 區間

示例

String s = "Hello java";
System.out.println(s.replace('a', 'n'));     // "Hello jnvn"
System.out.println(s.replace("java", "world")); // "Hello world"

String[] names = "zhangsan,lisi,wangwu".split(",");
// [zhangsan, lisi, wangwu]

String str = "abcdef";
System.out.println(str.substring(2));    // "cdef"
System.out.println(str.substring(2, 4)); // "cd"

五、大小寫、去空格、比較

方法說明
toUpperCase()轉大寫
toLowerCase()轉小寫
trim()去除首尾空格
compareTo(String anotherString)自然順序比較(Unicode 差值)

示例

String s = " Hello Java ";
System.out.println(s.trim());           // "Hello Java"
System.out.println("acc".compareTo("aaa")); // 2 (c - a = 2)

性能提示: 頻繁拼接字符串請使用 StringBuilder(單線程)或 StringBuffer(多線程),避免產生大量中間對象。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved