整頓Java編程中字符串的經常使用操作辦法。本站提示廣大學習愛好者:(整頓Java編程中字符串的經常使用操作辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是整頓Java編程中字符串的經常使用操作辦法正文
字符
普通情形下,當我們處置字符時,我們用原始數據類型 char。
示例
char ch = 'a'; // Unicode for uppercase Greek omega character char uniChar = '\u039A'; // an array of chars char[] charArray ={ 'a', 'b', 'c', 'd', 'e' };
但是在開辟中,我們會碰到須要應用對象而不是原始數據類型的情形。為了到達這個需求。Java 為原始數據類型 char 供給了包裝類 Character。
Character 類為操控字符供給了一系列有效處的類(例如:靜態類)。你可以借助 Character 結構函數發明一個 Character 對象。
Character ch = new Character('a');
Java 編譯器也將能在某些情形下為你發明一個 Character 對象。例如:假如你將一個原始 char 傳輸到一個可預期對象的辦法,編譯器就會為你主動將 char 轉化成 Character。 假如轉換從反偏向停止,這個特色被稱之為主動裝箱或拆箱。
示例
// 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');
本義序列
有反斜槓(\)在前的字符是一個本義序列而且關於編譯器有特別的意義。
換行符(\n)在 System.out.println() 語句中常常應用,在字符串打印出來後換行。
以下的表格展現了 Java 本義序列:
本義序列
描寫
\t
在文本中拔出一個標簽。
\b
在文本中拔出一個退格。
\n
在文本中拔出一個換行符。
\r
在文本中拔出一個回車。
\f
在文本中拔出一個換頁。
\'
在文本中拔出一個單引號字符。
\\
在文本中拔出一個反斜槓字符。
當一個本義序列碰到一個打印語句,編譯器就會響應地解譯。
示例
假如你想把引號放入引號內,必需應用本義序列, \” ,在外部援用:
public class Test { public static void main(String args[]) { System.out.println("She said \"Hello!\" to me."); } }
這將發生以下成果:
She said "Hello!" to me.
Character 辦法
以以下表是完成 Character 類一切子類的主要的實例辦法:
SN
辦法描寫
1
isLetter()
肯定詳細的char值是一個字母
2
isDigit()
肯定詳細的char值是一個數字
3
isWhitespace()
肯定詳細的char值是一個空格
4
isUpperCase()
肯定詳細的char值是一個年夜寫字母
5
isLowerCase()
肯定詳細的char值是一個小寫字母
6
toUpperCase()
前往指定字符值的年夜寫情勢
7
toLowerCase()
前往指定字符值的小寫寫情勢
8
toString()
前往代表指定的字符值的一個String對象,即一個字符的字符串
字符串
字符串,它被普遍運用於 Java 編程,是一個字符序列。在 Java 編程說話中,字符串是對象。
Java 平台供給了 String 類來創立和操作字符串。
創立字符串
最直接的方法來創立一個字符串是如許寫的:
String greeting = "Hello world!";
當你創立一個字符串時,編譯器在這類情形下用它的值創立一個 String 對象,如:"Hello world!'。
任何其他對象可以經由過程應用 new 症結字,並經由過程結構函數創立 String 對象。 String 類有11種結構函數供給應用分歧類型的字符串的初始值,如一個字符數組。
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 ); } }
這將發生以下成果:
hello.
注 String 類是弗成變的,是以,一旦創立了 String 對象那末是不克不及轉變的。假如須要年夜量修正字符的字符串,那末應當應用 StringBuffer & StringBuilder 類。
String 長度
用於獲得有關對象的信息的辦法稱為存取辦法。可以和字符串一路應用的一個存取辦法是 length() ,它前往包括在字符串對象中的字符數。
上面的兩行代碼被履行以後,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 ); } }
這將發生以下成果:
String Length is : 17
銜接字符串
String類包含用於銜接兩個字符串的辦法:
string1.concat(string2);
這前往一個新的字符串,即在 string1 開頭處添加 string2。還可使用 concat()辦法銜接字符串,如:
"My name is ".concat("Zara");
字符串更常應用 “ + ” 運算符銜接在一路,如:
"Hello," + " world" + "!"
這將發生:
"Hello, world!"
看看上面的例子:
public class StringDemo { public static void main(String args[]) { String string1 = "saw I was "; System.out.println("Dot " + string1 + "Tod"); } }
這將發生以下成果:
Dot saw I was Tod
創立格局化字符串
曾經有 printf() 和 format() 辦法來打印輸入格局的數字。 String 類有一個等價的辦法 format(),它前往一個 String 對象,而不是一個 PrintStream 對象。
應用字符串的靜態 format() 辦法許可創立可反復應用的格局化字符串,而不是一次性的 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)
比擬兩個字符串按字典次序,不辨別年夜小寫的差別。
5
String concat(String str)
將指定的字符串串聯到這個字符串的開頭。
6
boolean contentEquals(StringBuffer sb)
前往true當且僅當該字符串代表雷同的字符序列作為指定的StringBuffer。
7
static String copyValueOf(char[] data)
前往表現所指定的數組中的字符序列的字符串。
8
static String copyValueOf(char[] data, int offset, int count)
前往表現所指定的數組中的字符序列的字符串。
9
boolean endsWith(String suffix)
測試此字符串能否以指定的後綴停止。
10
boolean equals(Object anObject)
比擬此字符串與指定的對象。
11
boolean equalsIgnoreCase(String anotherString)
比擬這個字符串到另外一個字符串,疏忽年夜小寫的斟酌。
12
byte getBytes()
將此String解碼應用平台的默許字符集,並將成果存儲到一個新的字節數組中的字節序列。
13
byte[] getBytes(String charsetName
將此String解碼應用指定的字符集的字節序列,並將成果存儲到一個新的字節數組。
14
void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
從這個字符串復制字符到目的字符數組。
15
int hashCode()
為這個字符串前往一個哈希代碼。
16
int indexOf(int ch)
前往此字符串指定字符第一次湧現處的索引。
17
int indexOf(int ch, int fromIndex)
前往索引這個字符串中指定字符第一次湧現處,指定索引處開端搜刮。
18
int indexOf(String str)
前往此字符串指定子字符串的第一次湧現處的索引。
19
int indexOf(String str,int fromIndex)
前往這個字符串中指定子字符串的第一次湧現處的索引,從指定的索引處開端。
20
String intern()
前往字符串對象的標准化表現。
21
int lastIndexOf(int ch)
前往此字符串指定字符最初一次湧現處的索引。
22
int lastIndexOf(int ch, int fromIndex)
前往此字符串指定字符最初一次湧現處的索引,從指定索引開端向後搜刮。
23
int lastIndexOf(String str)
前往此字符串指定子字符串的最左邊湧現處的索引。
24
int lastIndexOf(String str, int fromIndex)
前往索引這個字符串中指定子字符串的最初湧現處,從指定的索引開端處向後搜刮。
25
int length()
前往此字符串的長度。
26
boolean matches(String regex)
斷定此字符串能否與給定的正則表達式婚配。
27
boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)
測試兩個字符串的區域等於。
28
boolean regionMatches(int toffset, String other, int ooffset, int len)
測試兩個字符串的區域都是相等的。
29
String replace(char oldChar, char newChar)
前往從newChar改換oldChar一切湧現在此字符串中發生一個新的字符串。
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()
這個字符串轉換為一個新的字符數組。
40
String toLowerCase()
將一切在此字符串中的字符應用默許說話情況的規矩小寫。
41
String toLowerCase(Locale locale)
將一切在此字符串中的字符應用給定Locale的規矩小寫。
42
String toString()
這個對象(它曾經是一個字符串!)前往字符串情勢(這裡是本身自己)。
43
String toUpperCase()
應用默許說話情況的規矩將此String中一切的字符轉換為年夜寫。
44
String toUpperCase(Locale locale)
應用給定Locale的規矩將此String中一切的字符轉換為年夜寫。
45
String trim()
前往字符串的一個正本,開首和開頭的空格去除。
46
static String valueOf(primitive data type x)
前往傳遞的數據類型參數的字符串表現情勢。