String 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
這個 String 類別代表字串。
[Android.Runtime.Register("java/lang/String", DoNotGenerateAcw=true)]
public sealed class String : Java.Lang.Object, IDisposable, Java.IO.ISerializable, Java.Lang.ICharSequence, Java.Lang.IComparable, System.Collections.Generic.IEnumerable<char>
[<Android.Runtime.Register("java/lang/String", DoNotGenerateAcw=true)>]
type String = class
inherit Object
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface ICharSequence
interface seq<char>
interface IEnumerable
interface IComparable
- 繼承
- 屬性
- 實作
備註
這個 String 類別代表字串。 Java 程式中的所有字串字面量,例如 "abc",都是作為此類別實例實作的。
弦是恆定的;它們的價值在被創造後無法改變。 字串緩衝區支援可變字串。 由於字串物件是不可變的,因此可以被共享。 例如: <區塊引號>
String str = "abc";
</區塊引用>
等價於: <方塊引號>
char data[] = {'a', 'b', 'c'};
String str = new String(data);
</區塊引用>
以下是更多字串的使用範例: <blockquote>
System.out.println("abc");
String cde = "cde";
System.out.println("abc" + cde);
String c = "abc".substring(2,3);
String d = cde.substring(1, 2);
</區塊引用>
此類別 String 包含檢查序列中個別字元的方法、字串比較、字串搜尋、擷取子字串,以及建立包含所有字元轉換為大寫或小寫的字串副本的方法。 格映射基於該類別所規定 java.lang.Character Character 的 Unicode 標準版本。
Java 語言對字串串接運算子( + ),以及將其他物件轉換為字串。 關於字串串接與轉換的更多資訊,請參見
除非另有說明,將參數傳遞 null 給此類別中的建構子或方法會導致拋出 a NullPointerException 。
A String 代表 UTF-16 格式中的字串,其中 <em>的補充字元</em> 由 <em>代理對</em> 表示(詳見類別 Character 中的 Unicode 字元表示章節)。 索引值指的是 char 代碼單位,因此補充字元會在 String中佔用兩個位置。
該 String 類別除了處理 Unicode 碼點(即字元)的方法外,還提供處理 Unicode 碼單元(即 char 值)的方法。
除非另有說明,字串比較方法不會考慮地點。 本 java.text.Collator 類別提供更細粒度、區域敏感的字串比較方法。
1.0 版本新增。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
建構函式
| 名稱 | Description |
|---|---|
| String() |
會產生一個空字串。 |
| String(Byte[], Charset) |
透過使用指定的 Java 解碼指定的位元組陣列來建構新 |
| String(Byte[], Int32, Int32, Charset) |
透過解碼指定的子陣列的位元組,並使用指定的 Java 來構造新 |
| String(Byte[], Int32, Int32, Int32) |
已淘汰.
由一個 8 位元整數陣列的子陣列配置一個新 |
| String(Byte[], Int32, Int32, String) |
透過解碼指定的字元組子陣列來構造新字 |
| String(Byte[], Int32, Int32) |
透過使用平台預設字元集解碼指定的子陣列來構建新 |
| String(Byte[], Int32) |
已淘汰.
分配一個包含由 8 位元整數陣列組成的字 |
| String(Byte[], String) |
透過使用指定的 Java 解碼指定的位元組陣列來建構新 |
| String(Byte[]) |
透過使用平台預設字元集解碼指定的位元組陣列來構建新 |
| String(Char[], Int32, Int32) |
初始化此字串以包含給定 |
| String(Char[]) |
初始化此字串以包含給定 |
| String(Int32[], Int32, Int32) |
分配一個包含 Unicode 代碼點陣列參數子陣列字元的新資料 |
| String(String) |
構造一個與 相同的字元 |
| String(StringBuffer) |
分配一個新字串,包含目前字串緩衝區參數中所包含的字元序列。 |
| String(StringBuilder) |
分配一個新字串,包含目前字串建構參數中所包含的字元序列。 |
屬性
| 名稱 | Description |
|---|---|
| CaseInsensitiveOrder |
一個比較器,將物件排序 |
| Class |
回傳此 |
| Handle |
底層 Android 實例的帳號。 (繼承來源 Object) |
| IsBlank |
若字串為空或僅 |
| IsEmpty |
回傳 |
| JniIdentityHashCode |
取得由互通執行時指派給此 Java 對等端的身份雜湊碼。 (繼承來源 Object) |
| JniManagedPeerState |
這個 |
| JniPeerMembers |
取得用於調用此 Java 節點成員的 JNI 元資料。 |
| PeerReference |
取得這個 Java 節點的 JNI 物件參考。 (繼承來源 Object) |
| ThresholdClass |
此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。 (繼承來源 Object) |
| ThresholdType |
此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。 (繼承來源 Object) |
方法
| 名稱 | Description |
|---|---|
| CharAt(Int32) |
回傳 |
| Clone() |
建立並回傳此物件的副本。 (繼承來源 Object) |
| CodePointAt(Int32) |
回傳字元(Unicode 代碼點)在指定的索引處。 |
| CodePointBefore(Int32) |
回傳指定索引前的字元(Unicode 代碼點)。 |
| CodePointCount(Int32, Int32) |
回傳該 |
| CompareTo(String) |
以字典序比較兩個字串。 |
| CompareToIgnoreCase(String) |
以字典序方式比較兩串字串,忽略格差異。 |
| Concat(String) |
將指定的字串串接到該字串的末尾。 |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
這個 |
| Contains(ICharSequence) |
回傳真當且僅當此字串包含指定的字元值序列。 |
| Contains(String) |
回傳真當且僅當此字串包含指定的字元值序列。 |
| ContentEquals(ICharSequence) |
將此字串與指定的 |
| ContentEquals(String) |
將此字串與指定的 |
| ContentEquals(StringBuffer) |
將此字串與指定的 |
| CopyValueOf(Char[], Int32, Int32) |
相當於 |
| CopyValueOf(Char[]) |
相當於 |
| Dispose() |
釋放該 Java 節點所持有的資源。 (繼承來源 Object) |
| Dispose(Boolean) |
釋放該 Java 節點所持有的資源。 (繼承來源 Object) |
| DisposeUnlessReferenced() |
這個 |
| EndsWith(String) |
測試此字串是否以指定的後綴結尾。 |
| Equals(Object) |
這個 |
| Equals(Object) |
表示是否有其他物體「等同」於此物。 (繼承來源 Object) |
| EqualsIgnoreCase(String) |
將此 |
| Format(Locale, String, Object[]) |
回傳一個格式化字串,使用指定的格式字串與參數。 |
| Format(String, Object[]) |
回傳一個格式化字串,使用指定的格式字串與參數。 |
| Formatted(Object[]) |
透過替換所提供的參數來格式化此字串。 |
| GetBytes() |
將此 |
| GetBytes(Charset) |
利用給定的 Java 編碼 |
| GetBytes(Int32, Int32, Byte[], Int32) |
已淘汰.
將此字串的字元複製到目的地位元組陣列中。 |
| GetBytes(String) |
將此 |
| GetChars(Int32, Int32, Char[], Int32) |
將此字串的字元複製到目標字元陣列中。 |
| GetEnumerator() |
回傳一個枚舉器,會遍歷此序列中的字元。 |
| GetHashCode() |
回傳物件的雜湊碼值。 (繼承來源 Object) |
| Indent(Int32) |
根據 的 |
| IndexOf(Int32, Int32, Int32) |
回傳該字元首次出現的字串索引,搜尋從 開始 |
| IndexOf(Int32, Int32) |
回傳該字元首次出現的字串索引,從指定索引開始搜尋。 |
| IndexOf(Int32) |
回傳該字串中首次出現指定字元的索引。 |
| IndexOf(String, Int32, Int32) |
回傳該字串在指定索引範圍內首次出現的索引。 |
| IndexOf(String, Int32) |
回傳該字串中指定子字串首次出現的索引,從指定索引開始。 |
| IndexOf(String) |
回傳該字串中首次出現指定子串的索引。 |
| Intern() |
回傳字串物件的典範表示。 |
| JavaFinalize() |
已淘汰.
當垃圾回收判定該物件不再有相關參考時,由垃圾回收器呼叫。 (繼承來源 Object) |
| Join(ICharSequence, ICharSequence[]) |
回傳一個由 的複本 |
| Join(ICharSequence, IIterable) |
回傳 |
| Join(String, IIterable) |
回傳 |
| Join(String, String[]) |
回傳一個由 的複本 |
| LastIndexOf(Int32, Int32) |
回傳該字元最後一次出現的字串索引,從指定索引開始往後搜尋。 |
| LastIndexOf(Int32) |
回傳該字元最後出現的字串索引。 |
| LastIndexOf(String, Int32) |
回傳該字串中指定子串最後出現的索引,從指定索引開始往回搜尋。 |
| LastIndexOf(String) |
回傳該字串中最後一次出現該子字串的索引。 |
| Length() |
回傳此字串的長度。 |
| Matches(String) |
判斷此字串是否符合給定的正則表達式。 |
| Notify() |
喚醒一個正在該物件監視器上等待的執行緒。 (繼承來源 Object) |
| NotifyAll() |
喚醒所有等待該物件監視器的執行緒。 (繼承來源 Object) |
| OffsetByCodePoints(Int32, Int32) |
回傳與 |
| RegionMatches(Boolean, Int32, String, Int32, Int32) |
測試兩個弦區域是否相等。 |
| RegionMatches(Int32, String, Int32, Int32) |
測試兩個弦區域是否相等。 |
| Repeat(Int32) |
回傳一個字串,其值為該字串 |
| Replace(Char, Char) |
回傳一個字串,該字串由將該字串中所有出現 |
| Replace(ICharSequence, ICharSequence) |
將該字串中每個與目標字面序列匹配的子串替換為指定的文字替換序列。 |
| Replace(String, String) |
將該字串中每個與目標字面序列匹配的子串替換為指定的文字替換序列。 |
| ReplaceAll(String, String) |
將與該正則表達式匹配的每個子字串替換為給定的替換。 |
| ReplaceFirst(String, String) |
將該字串中與給定正則表達式匹配的第一個子串替換為給定的替換。 |
| SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
這個 |
| Split(String, Int32) |
會根據與給定正則表達式的匹配將字串分割。 |
| Split(String) |
會根據與給定正則表達式的匹配將字串分割。 |
| SplitWithDelimiters(String, Int32) |
將字串分割成與給定正則表達式匹配的部分,並回傳字串及匹配分隔符。 |
| StartsWith(String, Int32) |
測試此字串中從指定索引開始的子串是否以指定前綴開頭。 |
| StartsWith(String) |
測試此字串是否以指定的前綴開頭。 |
| Strip() |
回傳一個值為此字串的字串,且移除所有前置與後置。 |
| StripIndent() |
回傳一個字串,其值為該字串,且每行開頭與結尾的 Character#isWhitespace(int) 留白被移除。 |
| StripLeading() |
回傳一個值為該字串的字串,且所有前導 |
| StripTrailing() |
回傳一個值為該字串的字串,且移除所有尾隨字 |
| SubSequence(Int32, Int32) |
回傳一個字元序列,該序列是該序列的子序列。 |
| SubSequenceFormatted(Int32, Int32) |
回傳一個字元序列,該序列是該序列的子序列。 |
| Substring(Int32, Int32) |
回傳一個是該字串子串的子字串。 |
| Substring(Int32) |
回傳一個是該字串子串的子字串。 |
| ToArray<T>() |
從這個 Java 陣列包裝器建立一個受管理陣列。 (繼承來源 Object) |
| ToCharArray() |
將此字串轉換成新的字元陣列。 |
| ToLowerCase() |
會依照預設地區規則將所有 |
| ToLowerCase(Locale) |
利用給定 |
| ToString() |
將此值轉換為字串。 |
| ToUpperCase() |
會依照預設地區的規則,將所有 |
| ToUpperCase(Locale) |
利用給定 |
| Transform(IFunction) |
此方法允許對字串套用函式 |
| TranslateEscapes() |
回傳一個值為該字串的字串,跳脫序列會像字串字面值一樣被翻譯。 |
| Trim() |
回傳一個字串,其值為此字串,且移除所有前後空格,其中空位定義為碼點小於或等 |
| UnregisterFromRuntime() |
將此 Java 節點從互通執行時中取消註冊。 (繼承來源 Object) |
| ValueOf(Boolean) |
回傳參數的 |
| ValueOf(Char) |
回傳參數的 |
| ValueOf(Char[], Int32, Int32) |
回傳陣列參數中特定子陣列 |
| ValueOf(Char[]) |
回傳陣列參數的 |
| ValueOf(Double) |
回傳參數的 |
| ValueOf(Int32) |
回傳參數的 |
| ValueOf(Int64) |
回傳參數的 |
| ValueOf(Object) |
回傳參數的 |
| ValueOf(Single) |
回傳參數的 |
| Wait() |
導致目前執行緒等待被喚醒,通常是透過 <em>通知</><em 或 em>中斷</em> 來喚醒。 (繼承來源 Object) |
| Wait(Int64, Int32) |
會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。 (繼承來源 Object) |
| Wait(Int64) |
會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。 (繼承來源 Object) |
明確介面實作
| 名稱 | Description |
|---|---|
| IComparable.CompareTo(Object) |
將此值與指定的排序物件比較。 |
| IEnumerable.GetEnumerator() |
回傳此序列中字元的非通用列舉器。 |
| IJavaPeerable.Disposed() |
這個 |
| IJavaPeerable.Finalized() |
這個 |
| IJavaPeerable.JniObjectReferenceControlBlock |
這個 |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
這個 |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
這個 |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
這個 |
| IJavaPeerable.UnregisterFromRuntime() |
這個 |
擴充方法
| 名稱 | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
取得實例 |
| JavaAs<TResult>(IJavaPeerable) |
試著強制 |
| JavaCast<TResult>(IJavaObject) |
執行 Android 執行時檢查型別轉換。 |
| JavaCast<TResult>(IJavaObject) |
這個 |
| SubSequence(ICharSequence, Int32, Int32) |
回傳指定範圍內的字元子序列。 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
試著強制 |