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

整理Java編程中字符串的常用操作方法

 更新時間:2016年02月17日 08:46:49   作者:極客學院  
這篇文章主要介紹了Java編程中字符串的常用操作方法的整理,字符串處理是Java入門學習中的基礎知識,需要的朋友可以參考下

字符
一般情況下,當我們處理字符時,我們用原始數(shù)據(jù)類型 char。

示例

char ch = 'a';

// Unicode for uppercase Greek omega character
char uniChar = '\u039A'; 

// an array of chars
char[] charArray ={ 'a', 'b', 'c', 'd', 'e' };

然而在開發(fā)中,我們會遇到需要使用對象而不是原始數(shù)據(jù)類型的情況。為了達到這個需求。Java 為原始數(shù)據(jù)類型 char 提供了包裝類 Character。

Character 類為操控字符提供了一系列有用處的類(例如:靜態(tài)類)。你可以借助 Character 構造函數(shù)創(chuàng)造一個 Character 對象。

Character ch = new Character('a');

Java 編譯器也將能在某些情況下為你創(chuàng)造一個 Character 對象。例如:如果你將一個原始 char 傳輸?shù)揭粋€可預期對象的方法,編譯器就會為你自動將 char 轉(zhuǎn)化成 Character。 如果轉(zhuǎn)換從反方向進行,這個特點被稱之為自動裝箱或拆箱。

示例

// Here following primitive char 'a'
// is boxed into the Character object ch
Character ch = 'a';

// Here primitive 'x' is boxed for method test,
// return is unboxed to char 'c'

char c = test('x');

轉(zhuǎn)義序列
有反斜杠(\)在前的字符是一個轉(zhuǎn)義序列并且對于編譯器有特殊的意義。

換行符(\n)在 System.out.println() 語句中經(jīng)常使用,在字符串打印出來后換行。

以下的表格展示了 Java 轉(zhuǎn)義序列:

轉(zhuǎn)義序列 描述
\t 在文本中插入一個標簽。
\b 在文本中插入一個退格。
\n 在文本中插入一個換行符。
\r 在文本中插入一個回車。
\f 在文本中插入一個換頁。
\' 在文本中插入一個單引號字符。
\\ 在文本中插入一個反斜杠字符。

當一個轉(zhuǎn)義序列遇到一個打印語句,編譯器就會相應地解譯。

示例

如果你想把引號放入引號內(nèi),必須使用轉(zhuǎn)義序列, \” ,在內(nèi)部引用:

public class Test {

 public static void main(String args[]) {
  System.out.println("She said \"Hello!\" to me.");
 }
}

這將產(chǎn)生以下結(jié)果:

She said "Hello!" to me.
Character 方法
以下列表是實現(xiàn) Character 類所有子類的重要的實例方法:

SN 方法描述
1 isLetter()
確定具體的char值是一個字母
2 isDigit()
確定具體的char值是一個數(shù)字
3 isWhitespace()
確定具體的char值是一個空格
4 isUpperCase()
確定具體的char值是一個大寫字母
5 isLowerCase()
確定具體的char值是一個小寫字母
6 toUpperCase()
返回指定字符值的大寫形式
7 toLowerCase()
返回指定字符值的小寫寫形式
8 toString()
返回代表指定的字符值的一個String對象,即一個字符的字符串


字符串
字符串,它被廣泛應用于 Java 編程,是一個字符序列。在 Java 編程語言中,字符串是對象。

Java 平臺提供了 String 類來創(chuàng)建和操作字符串。

創(chuàng)建字符串
最直接的方式來創(chuàng)建一個字符串是這樣寫的:

String greeting = "Hello world!";
當你創(chuàng)建一個字符串時,編譯器在這種情況下用它的值創(chuàng)建一個 String 對象,如:"Hello world!'。

任何其他對象可以通過使用 new 關鍵字,并通過構造函數(shù)創(chuàng)建 String 對象。 String 類有11種構造函數(shù)提供使用不同類型的字符串的初始值,如一個字符數(shù)組。

public class StringDemo{

 public static void main(String args[]){
  char[] helloArray = { 'h', 'e', 'l', 'l', 'o', '.'};
  String helloString = new String(helloArray); 
  System.out.println( helloString );
 }
}

這將產(chǎn)生以下結(jié)果:

hello.

注 String 類是不可變的,因此,一旦創(chuàng)建了 String 對象那么是不能改變的。如果需要大量修改字符的字符串,那么應該使用 StringBuffer & StringBuilder 類。

String 長度
用于獲取有關對象的信息的方法稱為存取方法??梢院妥址黄鹗褂玫囊粋€存取方法是 length() ,它返回包含在字符串對象中的字符數(shù)。

下面的兩行代碼被執(zhí)行之后,len 等于17:

public class StringDemo {

 public static void main(String args[]) {
  String palindrome = "Dot saw I was Tod";
  int len = palindrome.length();
  System.out.println( "String Length is : " + len );
 }
}

這將產(chǎn)生以下結(jié)果:

String Length is : 17

連接字符串
String類包括用于連接兩個字符串的方法:

string1.concat(string2);

這返回一個新的字符串,即在 string1 結(jié)尾處添加 string2。還可以使用 concat()方法連接字符串,如:

"My name is ".concat("Zara");

字符串更常使用 “ + ” 運算符連接在一起,如:

"Hello," + " world" + "!"

這將產(chǎn)生:

"Hello, world!"

看看下面的例子:

public class StringDemo {

 public static void main(String args[]) {
  String string1 = "saw I was ";
  System.out.println("Dot " + string1 + "Tod");
 }
}

這將產(chǎn)生以下結(jié)果:

Dot saw I was Tod

創(chuàng)建格式化字符串
已經(jīng)有 printf() 和 format() 方法來打印輸出格式的數(shù)字。 String 類有一個等價的方法 format(),它返回一個 String 對象,而不是一個 PrintStream 對象。

使用字符串的靜態(tài) format() 方法允許創(chuàng)建可重復使用的格式化字符串,而不是一次性的 print 語句。例如,如果代替以下方法:

System.out.printf("The value of the float variable is " +
     "%f, while the value of the integer " +
     "variable is %d, and the string " +
     "is %s", floatVar, intVar, stringVar);

可以這樣寫:

String fs;
fs = String.format("The value of the float variable is " +
     "%f, while the value of the integer " +
     "variable is %d, and the string " +
     "is %s", floatVar, intVar, stringVar);
System.out.println(fs);

String 方法
這里是由 String 類支持的方法列表:

SN 方法及描述
1 char charAt(int index)
返回指定索引處的字符。
2 int compareTo(Object o)
將這個字符串與另一個對象比較。
3 int compareTo(String anotherString)
比較兩個字符串的字典順序。
4 int compareToIgnoreCase(String str)
比較兩個字符串按字典順序,不區(qū)分大小寫的差異。
5 String concat(String str)
將指定的字符串串連到這個字符串的結(jié)尾。
6 boolean contentEquals(StringBuffer sb)
返回true當且僅當該字符串代表相同的字符序列作為指定的StringBuffer。
7 static String copyValueOf(char[] data)
返回表示所指定的數(shù)組中的字符序列的字符串。
8 static String copyValueOf(char[] data, int offset, int count)
返回表示所指定的數(shù)組中的字符序列的字符串。
9 boolean endsWith(String suffix)
測試此字符串是否以指定的后綴結(jié)束。
10 boolean equals(Object anObject)
比較此字符串與指定的對象。
11 boolean equalsIgnoreCase(String anotherString)
比較這個字符串到另一個字符串,忽略大小寫的考慮。
12 byte getBytes()
將此String解碼使用平臺的默認字符集,并將結(jié)果存儲到一個新的字節(jié)數(shù)組中的字節(jié)序列。
13 byte[] getBytes(String charsetName
將此String解碼使用指定的字符集的字節(jié)序列,并將結(jié)果存儲到一個新的字節(jié)數(shù)組。
14 void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
從這個字符串復制字符到目標字符數(shù)組。
15 int hashCode()
為這個字符串返回一個哈希代碼。
16 int indexOf(int ch)
返回此字符串指定字符第一次出現(xiàn)處的索引。
17 int indexOf(int ch, int fromIndex)
返回索引這個字符串中指定字符第一次出現(xiàn)處,指定索引處開始搜索。
18 int indexOf(String str)
返回此字符串指定子字符串的第一次出現(xiàn)處的索引。
19 int indexOf(String str,int fromIndex)
返回這個字符串中指定子字符串的第一次出現(xiàn)處的索引,從指定的索引處開始。
20 String intern()
返回字符串對象的規(guī)范化表示。
21 int lastIndexOf(int ch)
返回此字符串指定字符最后一次出現(xiàn)處的索引。
22 int lastIndexOf(int ch, int fromIndex)
返回此字符串指定字符最后一次出現(xiàn)處的索引,從指定索引開始向后搜索。
23 int lastIndexOf(String str)
返回此字符串指定子字符串的最右邊出現(xiàn)處的索引。
24 int lastIndexOf(String str, int fromIndex)
返回索引這個字符串中指定子字符串的最后出現(xiàn)處,從指定的索引開始處向后搜索。
25 int length()
返回此字符串的長度。
26 boolean matches(String regex)
判斷此字符串是否與給定的正則表達式匹配。
27 boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)
測試兩個字符串的區(qū)域等于。
28 boolean regionMatches(int toffset, String other, int ooffset, int len)
測試兩個字符串的區(qū)域都是相等的。
29 String replace(char oldChar, char newChar)
返回從newChar更換oldChar所有出現(xiàn)在此字符串中產(chǎn)生一個新的字符串。
30 String replaceAll(String regex, String replacement
替換此字符串中給定的正則表達式與給定替換相匹配的每個子字符串。
31 String replaceFirst(String regex, String replacement)
替換此字符串匹配給定的正則表達式給定替換第一個子字符串。
32 String[] split(String regex)
分割圍繞給定的正則表達式匹配的這個字符串。
33 String[] split(String regex, int limit)
分割圍繞給定的正則表達式匹配的這個字符串。
34 boolean startsWith(String prefix)
測試此字符串是否以指定的前綴開頭。
35 boolean startsWith(String prefix, int toffset)
測試此字符串是否以指定索引開始的指定前綴開始。
36 CharSequence subSequence(int beginIndex, int endIndex)
返回一個新的字符序列,這個序列的子序列。
37 String substring(int beginIndex)
返回一個新的字符串,它是此字符串的一個子字符串。
38 String substring(int beginIndex, int endIndex)
返回一個新的字符串,它是此字符串的一個子字符串。
39 char[] toCharArray()
這個字符串轉(zhuǎn)換為一個新的字符數(shù)組。
40 String toLowerCase()
將所有在此字符串中的字符使用默認語言環(huán)境的規(guī)則小寫。
41 String toLowerCase(Locale locale)
將所有在此字符串中的字符使用給定Locale的規(guī)則小寫。
42 String toString()
這個對象(它已經(jīng)是一個字符串!)返回字符串形式(這里是自己本身)。
43 String toUpperCase()
使用默認語言環(huán)境的規(guī)則將此String中所有的字符轉(zhuǎn)換為大寫。
44 String toUpperCase(Locale locale)
使用給定Locale的規(guī)則將此String中所有的字符轉(zhuǎn)換為大寫。
45 String trim()
返回字符串的一個副本,開頭和結(jié)尾的空格去除。
46 static String valueOf(primitive data type x)
返回傳遞的數(shù)據(jù)類型參數(shù)的字符串表示形式。

相關文章

  • 詳解批處理框架之Spring Batch

    詳解批處理框架之Spring Batch

    Spring Batch是一個輕量級的、完善的批處理框架,作為Spring體系中的一員,它擁有靈活、方便、生產(chǎn)可用的特點。在應對高效處理大量信息、定時處理大量數(shù)據(jù)等場景十分簡便。結(jié)合調(diào)度框架能更大地發(fā)揮Spring Batch的作用
    2021-06-06
  • SpringBoot?整合RabbitMq?自定義消息監(jiān)聽容器來實現(xiàn)消息批量處理

    SpringBoot?整合RabbitMq?自定義消息監(jiān)聽容器來實現(xiàn)消息批量處理

    Spring Boot中提供了默認的監(jiān)聽器容器,但是有時候我們需要自定義監(jiān)聽器容器,來滿足一些特殊的需求,比如批量獲取數(shù)據(jù),這篇文章主要介紹了SpringBoot?整合RabbitMq?自定義消息監(jiān)聽容器來實現(xiàn)消息批量處理,需要的朋友可以參考下
    2023-04-04
  • Java隨手筆記8之包、環(huán)境變量和訪問控制及maven profile實現(xiàn)多環(huán)境打包

    Java隨手筆記8之包、環(huán)境變量和訪問控制及maven profile實現(xiàn)多環(huán)境打包

    這篇文章主要介紹了Java隨手筆記8之包、環(huán)境變量和訪問控制及maven profile實現(xiàn)多環(huán)境打包的相關資料,需要的朋友可以參考下
    2015-11-11
  • SpringBoot 入門教程之引入數(shù)據(jù)傳輸層的方法

    SpringBoot 入門教程之引入數(shù)據(jù)傳輸層的方法

    這篇文章主要介紹了SpringBoot 入門教程之引入數(shù)據(jù)傳輸層的方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07
  • Springboot中靜態(tài)文件的兩種引入方式總結(jié)

    Springboot中靜態(tài)文件的兩種引入方式總結(jié)

    這篇文章主要介紹了Springboot中靜態(tài)文件的兩種引入方式總結(jié),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • ChatGPT-4.0未來已來 你來不來

    ChatGPT-4.0未來已來 你來不來

    最近聽說了一個非?;鸬募夹gChatGPT4.0,今天這篇文章就給大家介紹一下ChatGPT究竟是什么東東,不得不說ChatGPT是真的強,下面就讓我們一起了解究竟什么是ChatGPT吧
    2023-03-03
  • springboot?@Async?注解如何實現(xiàn)方法異步

    springboot?@Async?注解如何實現(xiàn)方法異步

    這篇文章主要介紹了springboot?@Async?注解如何實現(xiàn)方法異步,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java流形式返回前端的實現(xiàn)示例

    Java流形式返回前端的實現(xiàn)示例

    ? Java后端開發(fā)項目時,需要給前端傳一些數(shù)據(jù),本文主要介紹了Java流形式返回前端的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-04-04
  • SpringBoot @FixMethodOrder 如何調(diào)整單元測試順序

    SpringBoot @FixMethodOrder 如何調(diào)整單元測試順序

    這篇文章主要介紹了SpringBoot @FixMethodOrder 調(diào)整單元測試順序方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 詳解如何在SpringBoot中自定義參數(shù)解析器

    詳解如何在SpringBoot中自定義參數(shù)解析器

    這篇文章主要為大家詳細介紹了如何在SpringBoot中實現(xiàn)自定義參數(shù)解析器,文中的示例代碼講解詳細,對我們學習或工作有一定幫助,需要的可以參考一下
    2022-05-05

最新評論