Char Struktur

Definisi

Mewakili karakter sebagai unit kode UTF-16.

public value class char : IComparable, IComparable<char>, IConvertible, IEquatable<char>
public value class char : IComparable<char>, IConvertible, IEquatable<char>, IParsable<char>, ISpanParsable<char>, IUtf8SpanParsable<char>, System::Numerics::IAdditionOperators<char, char, char>, System::Numerics::IAdditiveIdentity<char, char>, System::Numerics::IBinaryInteger<char>, System::Numerics::IBinaryNumber<char>, System::Numerics::IBitwiseOperators<char, char, char>, System::Numerics::IComparisonOperators<char, char, bool>, System::Numerics::IDecrementOperators<char>, System::Numerics::IDivisionOperators<char, char, char>, System::Numerics::IEqualityOperators<char, char, bool>, System::Numerics::IIncrementOperators<char>, System::Numerics::IMinMaxValue<char>, System::Numerics::IModulusOperators<char, char, char>, System::Numerics::IMultiplicativeIdentity<char, char>, System::Numerics::IMultiplyOperators<char, char, char>, System::Numerics::INumber<char>, System::Numerics::INumberBase<char>, System::Numerics::IShiftOperators<char, int, char>, System::Numerics::ISubtractionOperators<char, char, char>, System::Numerics::IUnaryNegationOperators<char, char>, System::Numerics::IUnaryPlusOperators<char, char>, System::Numerics::IUnsignedNumber<char>
public value class char : IComparable, IComparable<char>, IConvertible, IEquatable<char>, ISpanFormattable
public value class char : IComparable<char>, IConvertible, IEquatable<char>, IParsable<char>, ISpanParsable<char>, System::Numerics::IAdditionOperators<char, char, char>, System::Numerics::IAdditiveIdentity<char, char>, System::Numerics::IBinaryInteger<char>, System::Numerics::IBinaryNumber<char>, System::Numerics::IBitwiseOperators<char, char, char>, System::Numerics::IComparisonOperators<char, char, bool>, System::Numerics::IDecrementOperators<char>, System::Numerics::IDivisionOperators<char, char, char>, System::Numerics::IEqualityOperators<char, char, bool>, System::Numerics::IIncrementOperators<char>, System::Numerics::IMinMaxValue<char>, System::Numerics::IModulusOperators<char, char, char>, System::Numerics::IMultiplicativeIdentity<char, char>, System::Numerics::IMultiplyOperators<char, char, char>, System::Numerics::INumber<char>, System::Numerics::INumberBase<char>, System::Numerics::IShiftOperators<char, int, char>, System::Numerics::ISubtractionOperators<char, char, char>, System::Numerics::IUnaryNegationOperators<char, char>, System::Numerics::IUnaryPlusOperators<char, char>, System::Numerics::IUnsignedNumber<char>
public value class char : IComparable, IConvertible
public value class char : IComparable, IComparable<char>, IEquatable<char>
public struct Char : IComparable, IComparable<char>, IConvertible, IEquatable<char>
public readonly struct Char : IComparable<char>, IConvertible, IEquatable<char>, IParsable<char>, ISpanParsable<char>, IUtf8SpanParsable<char>, System.Numerics.IAdditionOperators<char,char,char>, System.Numerics.IAdditiveIdentity<char,char>, System.Numerics.IBinaryInteger<char>, System.Numerics.IBinaryNumber<char>, System.Numerics.IBitwiseOperators<char,char,char>, System.Numerics.IComparisonOperators<char,char,bool>, System.Numerics.IDecrementOperators<char>, System.Numerics.IDivisionOperators<char,char,char>, System.Numerics.IEqualityOperators<char,char,bool>, System.Numerics.IIncrementOperators<char>, System.Numerics.IMinMaxValue<char>, System.Numerics.IModulusOperators<char,char,char>, System.Numerics.IMultiplicativeIdentity<char,char>, System.Numerics.IMultiplyOperators<char,char,char>, System.Numerics.INumber<char>, System.Numerics.INumberBase<char>, System.Numerics.IShiftOperators<char,int,char>, System.Numerics.ISubtractionOperators<char,char,char>, System.Numerics.IUnaryNegationOperators<char,char>, System.Numerics.IUnaryPlusOperators<char,char>, System.Numerics.IUnsignedNumber<char>
public readonly struct Char : IComparable, IComparable<char>, IConvertible, IEquatable<char>
public readonly struct Char : IComparable, IComparable<char>, IConvertible, IEquatable<char>, ISpanFormattable
public readonly struct Char : IComparable<char>, IConvertible, IEquatable<char>, IParsable<char>, ISpanParsable<char>, System.Numerics.IAdditionOperators<char,char,char>, System.Numerics.IAdditiveIdentity<char,char>, System.Numerics.IBinaryInteger<char>, System.Numerics.IBinaryNumber<char>, System.Numerics.IBitwiseOperators<char,char,char>, System.Numerics.IComparisonOperators<char,char,bool>, System.Numerics.IDecrementOperators<char>, System.Numerics.IDivisionOperators<char,char,char>, System.Numerics.IEqualityOperators<char,char,bool>, System.Numerics.IIncrementOperators<char>, System.Numerics.IMinMaxValue<char>, System.Numerics.IModulusOperators<char,char,char>, System.Numerics.IMultiplicativeIdentity<char,char>, System.Numerics.IMultiplyOperators<char,char,char>, System.Numerics.INumber<char>, System.Numerics.INumberBase<char>, System.Numerics.IShiftOperators<char,int,char>, System.Numerics.ISubtractionOperators<char,char,char>, System.Numerics.IUnaryNegationOperators<char,char>, System.Numerics.IUnaryPlusOperators<char,char>, System.Numerics.IUnsignedNumber<char>
[System.Serializable]
public struct Char : IComparable, IConvertible
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public struct Char : IComparable, IComparable<char>, IConvertible, IEquatable<char>
public struct Char : IComparable, IComparable<char>, IEquatable<char>
type char = struct
    interface IConvertible
type char = struct
    interface IConvertible
    interface IFormattable
    interface IParsable<char>
    interface ISpanFormattable
    interface ISpanParsable<char>
    interface IUtf8SpanFormattable
    interface IUtf8SpanParsable<char>
    interface IAdditionOperators<char, char, char>
    interface IAdditiveIdentity<char, char>
    interface IBinaryInteger<char>
    interface IBinaryNumber<char>
    interface IBitwiseOperators<char, char, char>
    interface IComparisonOperators<char, char, bool>
    interface IEqualityOperators<char, char, bool>
    interface IDecrementOperators<char>
    interface IDivisionOperators<char, char, char>
    interface IIncrementOperators<char>
    interface IModulusOperators<char, char, char>
    interface IMultiplicativeIdentity<char, char>
    interface IMultiplyOperators<char, char, char>
    interface INumber<char>
    interface INumberBase<char>
    interface ISubtractionOperators<char, char, char>
    interface IUnaryNegationOperators<char, char>
    interface IUnaryPlusOperators<char, char>
    interface IShiftOperators<char, int, char>
    interface IMinMaxValue<char>
    interface IUnsignedNumber<char>
type char = struct
    interface IConvertible
    interface ISpanFormattable
    interface IFormattable
type char = struct
    interface IConvertible
    interface IFormattable
    interface IParsable<char>
    interface ISpanFormattable
    interface ISpanParsable<char>
    interface IAdditionOperators<char, char, char>
    interface IAdditiveIdentity<char, char>
    interface IBinaryInteger<char>
    interface IBinaryNumber<char>
    interface IBitwiseOperators<char, char, char>
    interface IComparisonOperators<char, char, bool>
    interface IEqualityOperators<char, char, bool>
    interface IDecrementOperators<char>
    interface IDivisionOperators<char, char, char>
    interface IIncrementOperators<char>
    interface IModulusOperators<char, char, char>
    interface IMultiplicativeIdentity<char, char>
    interface IMultiplyOperators<char, char, char>
    interface INumber<char>
    interface INumberBase<char>
    interface ISubtractionOperators<char, char, char>
    interface IUnaryNegationOperators<char, char>
    interface IUnaryPlusOperators<char, char>
    interface IShiftOperators<char, int, char>
    interface IMinMaxValue<char>
    interface IUnsignedNumber<char>
type char = struct
    interface IConvertible
    interface IFormattable
    interface IParsable<char>
    interface ISpanFormattable
    interface ISpanParsable<char>
    interface IAdditionOperators<char, char, char>
    interface IAdditiveIdentity<char, char>
    interface IBinaryInteger<char>
    interface IBinaryNumber<char>
    interface IBitwiseOperators<char, char, char>
    interface IComparisonOperators<char, char, bool>
    interface IEqualityOperators<char, char, bool>
    interface IDecrementOperators<char>
    interface IDivisionOperators<char, char, char>
    interface IIncrementOperators<char>
    interface IModulusOperators<char, char, char>
    interface IMultiplicativeIdentity<char, char>
    interface IMultiplyOperators<char, char, char>
    interface INumber<char>
    interface INumberBase<char>
    interface ISubtractionOperators<char, char, char>
    interface IUnaryNegationOperators<char, char>
    interface IUnaryPlusOperators<char, char>
    interface IUtf8SpanFormattable
    interface IUtf8SpanParsable<char>
    interface IShiftOperators<char, int, char>
    interface IMinMaxValue<char>
    interface IUnsignedNumber<char>
[<System.Serializable>]
type char = struct
    interface IConvertible
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type char = struct
    interface IConvertible
type char = struct
Public Structure Char
Implements IComparable, IComparable(Of Char), IConvertible, IEquatable(Of Char)
Public Structure Char
Implements IAdditionOperators(Of Char, Char, Char), IAdditiveIdentity(Of Char, Char), IBinaryInteger(Of Char), IBinaryNumber(Of Char), IBitwiseOperators(Of Char, Char, Char), IComparable(Of Char), IComparisonOperators(Of Char, Char, Boolean), IConvertible, IDecrementOperators(Of Char), IDivisionOperators(Of Char, Char, Char), IEqualityOperators(Of Char, Char, Boolean), IEquatable(Of Char), IIncrementOperators(Of Char), IMinMaxValue(Of Char), IModulusOperators(Of Char, Char, Char), IMultiplicativeIdentity(Of Char, Char), IMultiplyOperators(Of Char, Char, Char), INumber(Of Char), INumberBase(Of Char), IParsable(Of Char), IShiftOperators(Of Char, Integer, Char), ISpanParsable(Of Char), ISubtractionOperators(Of Char, Char, Char), IUnaryNegationOperators(Of Char, Char), IUnaryPlusOperators(Of Char, Char), IUnsignedNumber(Of Char), IUtf8SpanParsable(Of Char)
Public Structure Char
Implements IComparable, IComparable(Of Char), IConvertible, IEquatable(Of Char), ISpanFormattable
Public Structure Char
Implements IAdditionOperators(Of Char, Char, Char), IAdditiveIdentity(Of Char, Char), IBinaryInteger(Of Char), IBinaryNumber(Of Char), IBitwiseOperators(Of Char, Char, Char), IComparable(Of Char), IComparisonOperators(Of Char, Char, Boolean), IConvertible, IDecrementOperators(Of Char), IDivisionOperators(Of Char, Char, Char), IEqualityOperators(Of Char, Char, Boolean), IEquatable(Of Char), IIncrementOperators(Of Char), IMinMaxValue(Of Char), IModulusOperators(Of Char, Char, Char), IMultiplicativeIdentity(Of Char, Char), IMultiplyOperators(Of Char, Char, Char), INumber(Of Char), INumberBase(Of Char), IParsable(Of Char), IShiftOperators(Of Char, Integer, Char), ISpanParsable(Of Char), ISubtractionOperators(Of Char, Char, Char), IUnaryNegationOperators(Of Char, Char), IUnaryPlusOperators(Of Char, Char), IUnsignedNumber(Of Char)
Public Structure Char
Implements IComparable, IConvertible
Public Structure Char
Implements IComparable, IComparable(Of Char), IEquatable(Of Char)
Warisan
Atribut
Penerapan
IComparable IComparable<Char> IConvertible IEquatable<Char> IComparable<TSelf> IEquatable<TSelf> IFormattable IParsable<Char> IParsable<TSelf> ISpanFormattable ISpanParsable<Char> ISpanParsable<TSelf> IUtf8SpanFormattable IUtf8SpanParsable<Char> IUtf8SpanParsable<TSelf> IAdditionOperators<Char,Char,Char> IAdditionOperators<TSelf,TSelf,TSelf> IAdditiveIdentity<Char,Char> IAdditiveIdentity<TSelf,TSelf> IBinaryInteger<Char> IBinaryNumber<Char> IBinaryNumber<TSelf> IBitwiseOperators<Char,Char,Char> IBitwiseOperators<TSelf,TSelf,TSelf> IComparisonOperators<Char,Char,Boolean> IComparisonOperators<TSelf,TSelf,Boolean> IDecrementOperators<Char> IDecrementOperators<TSelf> IDivisionOperators<Char,Char,Char> IDivisionOperators<TSelf,TSelf,TSelf> IEqualityOperators<Char,Char,Boolean> IEqualityOperators<TSelf,TOther,TResult> IEqualityOperators<TSelf,TSelf,Boolean> IIncrementOperators<Char> IIncrementOperators<TSelf> IMinMaxValue<Char> IModulusOperators<Char,Char,Char> IModulusOperators<TSelf,TSelf,TSelf> IMultiplicativeIdentity<Char,Char> IMultiplicativeIdentity<TSelf,TSelf> IMultiplyOperators<Char,Char,Char> IMultiplyOperators<TSelf,TSelf,TSelf> INumber<Char> INumber<TSelf> INumberBase<Char> INumberBase<TSelf> IShiftOperators<Char,Int32,Char> IShiftOperators<TSelf,Int32,TSelf> ISubtractionOperators<Char,Char,Char> ISubtractionOperators<TSelf,TSelf,TSelf> IUnaryNegationOperators<Char,Char> IUnaryNegationOperators<TSelf,TSelf> IUnaryPlusOperators<Char,Char> IUnaryPlusOperators<TSelf,TSelf> IUnsignedNumber<Char>

Contoh

Contoh kode berikut menunjukkan beberapa metode di Char.

using System;

public class CharStructureSample
{
    public static void Main()
    {
        char chA = 'A';
        char ch1 = '1';
        string str = "test string";

        Console.WriteLine(chA.CompareTo('B'));          //-----------  Output: "-1" (meaning 'A' is 1 less than 'B')
        Console.WriteLine(chA.Equals('A'));             //-----------  Output: "True"
        Console.WriteLine(Char.GetNumericValue(ch1));   //-----------  Output: "1"
        Console.WriteLine(Char.IsControl('\t'));        //-----------  Output: "True"
        Console.WriteLine(Char.IsDigit(ch1));           //-----------  Output: "True"
        Console.WriteLine(Char.IsLetter(','));          //-----------  Output: "False"
        Console.WriteLine(Char.IsLower('u'));           //-----------  Output: "True"
        Console.WriteLine(Char.IsNumber(ch1));          //-----------  Output: "True"
        Console.WriteLine(Char.IsPunctuation('.'));     //-----------  Output: "True"
        Console.WriteLine(Char.IsSeparator(str, 4));    //-----------  Output: "True"
        Console.WriteLine(Char.IsSymbol('+'));          //-----------  Output: "True"
        Console.WriteLine(Char.IsWhiteSpace(str, 4));   //-----------  Output: "True"
        Console.WriteLine(Char.Parse("S"));             //-----------  Output: "S"
        Console.WriteLine(Char.ToLower('M'));           //-----------  Output: "m"
        Console.WriteLine('x'.ToString());              //-----------  Output: "x"
    }
}
open System

let chA = 'A'
let ch1 = '1'
let str = "test string"

printfn $"{chA.CompareTo 'B'}"          //-----------  Output: "-1" (meaning 'A' is 1 less than 'B')
printfn $"{chA.Equals 'A'}"             //-----------  Output: "True"
printfn $"{Char.GetNumericValue ch1}"   //-----------  Output: "1"
printfn $"{Char.IsControl '\t'}"        //-----------  Output: "True"
printfn $"{Char.IsDigit ch1}"           //-----------  Output: "True"
printfn $"{Char.IsLetter ','}"          //-----------  Output: "False"
printfn $"{Char.IsLower 'u'}"           //-----------  Output: "True"
printfn $"{Char.IsNumber ch1}"          //-----------  Output: "True"
printfn $"{Char.IsPunctuation '.'}"     //-----------  Output: "True"
printfn $"{Char.IsSeparator(str, 4)}"   //-----------  Output: "True"
printfn $"{Char.IsSymbol '+'}"          //-----------  Output: "True"
printfn $"{Char.IsWhiteSpace(str, 4)}"  //-----------  Output: "True"
printfn $"""{Char.Parse "S"}"""         //-----------  Output: "S"
printfn $"{Char.ToLower 'M'}"           //-----------  Output: "m"
printfn $"{'x'}"                        //-----------  Output: "x"
Module CharStructure

    Public Sub Main()

        Dim chA As Char
        chA = "A"c
        Dim ch1 As Char
        ch1 = "1"c
        Dim str As String
        str = "test string"

        Console.WriteLine(chA.CompareTo("B"c))          ' Output: "-1" (meaning 'A' is 1 less than 'B')
        Console.WriteLine(chA.Equals("A"c))             ' Output: "True"
        Console.WriteLine(Char.GetNumericValue(ch1))    ' Output: "1"
        Console.WriteLine(Char.IsControl(Chr(9)))       ' Output: "True"
        Console.WriteLine(Char.IsDigit(ch1))            ' Output: "True"
        Console.WriteLine(Char.IsLetter(","c))          ' Output: "False"
        Console.WriteLine(Char.IsLower("u"c))           ' Output: "True"
        Console.WriteLine(Char.IsNumber(ch1))           ' Output: "True"
        Console.WriteLine(Char.IsPunctuation("."c))     ' Output: "True"
        Console.WriteLine(Char.IsSeparator(str, 4))     ' Output: "True"
        Console.WriteLine(Char.IsSymbol("+"c))          ' Output: "True"
        Console.WriteLine(Char.IsWhiteSpace(str, 4))    ' Output: "True"
        Console.WriteLine(Char.Parse("S"))              ' Output: "S"
        Console.WriteLine(Char.ToLower("M"c))           ' Output: "m"
        Console.WriteLine("x"c.ToString())              ' Output: "x"

    End Sub

End Module

Keterangan

Struktur Char mewakili kode titik Unicode dengan menggunakan pengodean UTF-16. Nilai dari objek Char adalah nilai numerik 16-bit (ordinal)nya.

Jika Anda tidak terbiasa dengan Unicode, nilai skalar, titik kode, pasangan pengganti, UTF-16, dan Rune tipe, lihat bagian Pengenalan pengodean karakter di .NET.

Artikel ini memeriksa hubungan antara Char objek dan karakter dan membahas beberapa tugas umum yang dilakukan dengan Char instans. Kami menyarankan agar Anda mempertimbangkan jenisnya Rune , yang diperkenalkan di .NET Core 3.0, sebagai alternatif Char untuk melakukan beberapa tugas ini.

Objek char, karakter Unicode, dan string

Objek String adalah kumpulan Char struktur berurutan yang mewakili string teks. Sebagian besar karakter Unicode dapat diwakili oleh satu Char objek, tetapi karakter yang dikodekan sebagai karakter dasar, pasangan pengganti, dan/atau menggabungkan urutan karakter diwakili oleh beberapa Char objek. Untuk alasan ini, Char struktur dalam String objek tidak selalu setara dengan satu karakter Unicode.

Beberapa unit kode 16-bit digunakan untuk mewakili karakter Unicode tunggal dalam kasus berikut:

  • Glyph, yang dapat terdiri dari satu karakter atau karakter dasar diikuti oleh satu atau beberapa karakter penggabung. Misalnya, karakter ä diwakili oleh Char objek yang unit kodenya adalah U+0061 diikuti oleh Char objek yang unit kodenya adalah U+0308. (Karakter ä juga dapat ditentukan oleh satu Char objek yang memiliki unit kode U+00E4.) Contoh berikut menggambarkan bahwa karakter ä terdiri dari dua Char objek.

    using System;
    using System.IO;
    
    public class Example1
    {
        public static void Main()
        {
            StreamWriter sw = new StreamWriter("chars1.txt");
            char[] chars = [ '\u0061', '\u0308' ];
            string strng = new String(chars);
            sw.WriteLine(strng);
            sw.Close();
        }
    }
    // The example produces the following output:
    //       ä
    
    open System
    open System.IO
    
    let sw = new StreamWriter("chars1.txt")
    let chars = [| '\u0061'; '\u0308' |]
    let string = String chars
    sw.WriteLine string
    sw.Close()
    
    // The example produces the following output:
    //       ä
    
    Imports System.IO
    
    Module Example2
        Public Sub Main()
            Dim sw As New StreamWriter("chars1.txt")
            Dim chars() As Char = {ChrW(&H61), ChrW(&H308)}
            Dim strng As New String(chars)
            sw.WriteLine(strng)
            sw.Close()
        End Sub
    End Module
    ' The example produces the following output:
    '       ä
    
  • Karakter di luar Unicode Basic Multilingual Plane (BMP). Unicode mendukung enam belas bidang selain BMP, yang mewakili bidang 0. Titik kode Unicode diwakili dalam UTF-32 dengan nilai 21-bit yang menyertakan bidang. Misalnya, U+1D160 mewakili karakter CATATAN MUSICAL SYMBOL EIGHTH. Karena pengodean UTF-16 hanya memiliki 16 bit, karakter yang berada di luar BMP diwakili oleh pasangan karakter pengganti dalam UTF-16. Contoh berikut menggambarkan bahwa UTF-32 setara dengan U+1D160, karakter MUSICAL SYMBOL EIGHTH NOTE, adalah U+D834 U+DD60. U+D834 adalah pengganti tinggi; pengganti tinggi berkisar dari U+D800 hingga U+DBFF. U+DD60 adalah pengganti rendah; pengganti rendah berkisar dari U+DC00 hingga U+DFFF.

    using System;
    using System.IO;
    
    public class Example3
    {
        public static void Main()
        {
            StreamWriter sw = new StreamWriter(@".\chars2.txt");
            int utf32 = 0x1D160;
            string surrogate = Char.ConvertFromUtf32(utf32);
            sw.WriteLine($"U+{utf32:X6} UTF-32 = {surrogate} ({ShowCodePoints(surrogate)}) UTF-16");
            sw.Close();
        }
    
        private static string ShowCodePoints(string value)
        {
            string retval = null;
            foreach (var ch in value)
                retval += $"U+{Convert.ToUInt16(ch):X4} ";
    
            return retval.Trim();
        }
    }
    // The example produces the following output:
    //       U+01D160 UTF-32 = ð (U+D834 U+DD60) UTF-16
    
    open System
    open System.IO
    
    let showCodePoints (value: char seq) =
        let str =
            value
            |> Seq.map (fun ch -> $"U+{Convert.ToUInt16 ch:X4}")
            |> String.concat ""
        str.Trim()
    
    let sw = new StreamWriter(@".\chars2.txt")
    let utf32 = 0x1D160
    let surrogate = Char.ConvertFromUtf32 utf32
    sw.WriteLine $"U+{utf32:X6} UTF-32 = {surrogate} ({showCodePoints surrogate}) UTF-16"
    sw.Close()
    
    // The example produces the following output:
    //       U+01D160 UTF-32 = ð (U+D834 U+DD60) UTF-16
    
    Imports System.IO
    
    Module Example4
        Public Sub Main()
            Dim sw As New StreamWriter(".\chars2.txt")
            Dim utf32 As Integer = &H1D160
            Dim surrogate As String = Char.ConvertFromUtf32(utf32)
            sw.WriteLine("U+{0:X6} UTF-32 = {1} ({2}) UTF-16",
                       utf32, surrogate, ShowCodePoints(surrogate))
            sw.Close()
        End Sub
    
        Private Function ShowCodePoints(value As String) As String
            Dim retval As String = Nothing
            For Each ch In value
                retval += String.Format("U+{0:X4} ", Convert.ToUInt16(ch))
            Next
            Return retval.Trim()
        End Function
    End Module
    ' The example produces the following output:
    '       U+01D160 UTF-32 = ð (U+D834 U+DD60) UTF-16
    

Karakter dan kategori karakter

Setiap karakter Unicode atau pasangan pengganti yang valid termasuk dalam kategori Unicode. Dalam .NET, kategori Unicode diwakili oleh anggota UnicodeCategory enumerasi dan menyertakan nilai seperti UnicodeCategory.CurrencySymbol, , UnicodeCategory.LowercaseLetterdan UnicodeCategory.SpaceSeparator, misalnya.

Untuk menentukan kategori Unicode karakter, panggil GetUnicodeCategory metode . Misalnya, contoh berikut memanggil GetUnicodeCategory untuk menampilkan kategori Unicode dari setiap karakter dalam string. Contoh bekerja dengan benar hanya jika tidak ada pasangan pengganti di String instance.

using System;
using System.Globalization;

class Example
{
   public static void Main()
   {
      // Define a string with a variety of character categories.
      String s = "The red car drove down the long, narrow, secluded road.";
      // Determine the category of each character.
      foreach (var ch in s)
         Console.WriteLine($"'{ch}': {Char.GetUnicodeCategory(ch)}");
   }
}
// The example displays the following output:
//      'T': UppercaseLetter
//      'h': LowercaseLetter
//      'e': LowercaseLetter
//      ' ': SpaceSeparator
//      'r': LowercaseLetter
//      'e': LowercaseLetter
//      'd': LowercaseLetter
//      ' ': SpaceSeparator
//      'c': LowercaseLetter
//      'a': LowercaseLetter
//      'r': LowercaseLetter
//      ' ': SpaceSeparator
//      'd': LowercaseLetter
//      'r': LowercaseLetter
//      'o': LowercaseLetter
//      'v': LowercaseLetter
//      'e': LowercaseLetter
//      ' ': SpaceSeparator
//      'd': LowercaseLetter
//      'o': LowercaseLetter
//      'w': LowercaseLetter
//      'n': LowercaseLetter
//      ' ': SpaceSeparator
//      't': LowercaseLetter
//      'h': LowercaseLetter
//      'e': LowercaseLetter
//      ' ': SpaceSeparator
//      'l': LowercaseLetter
//      'o': LowercaseLetter
//      'n': LowercaseLetter
//      'g': LowercaseLetter
//      ',': OtherPunctuation
//      ' ': SpaceSeparator
//      'n': LowercaseLetter
//      'a': LowercaseLetter
//      'r': LowercaseLetter
//      'r': LowercaseLetter
//      'o': LowercaseLetter
//      'w': LowercaseLetter
//      ',': OtherPunctuation
//      ' ': SpaceSeparator
//      's': LowercaseLetter
//      'e': LowercaseLetter
//      'c': LowercaseLetter
//      'l': LowercaseLetter
//      'u': LowercaseLetter
//      'd': LowercaseLetter
//      'e': LowercaseLetter
//      'd': LowercaseLetter
//      ' ': SpaceSeparator
//      'r': LowercaseLetter
//      'o': LowercaseLetter
//      'a': LowercaseLetter
//      'd': LowercaseLetter
//      '.': OtherPunctuation
open System

// Define a string with a variety of character categories.
let s = "The red car drove down the long, narrow, secluded road."
// Determine the category of each character.
for ch in s do
    printfn $"'{ch}': {Char.GetUnicodeCategory ch}"

// The example displays the following output:
//      'T': UppercaseLetter
//      'h': LowercaseLetter
//      'e': LowercaseLetter
//      ' ': SpaceSeparator
//      'r': LowercaseLetter
//      'e': LowercaseLetter
//      'd': LowercaseLetter
//      ' ': SpaceSeparator
//      'c': LowercaseLetter
//      'a': LowercaseLetter
//      'r': LowercaseLetter
//      ' ': SpaceSeparator
//      'd': LowercaseLetter
//      'r': LowercaseLetter
//      'o': LowercaseLetter
//      'v': LowercaseLetter
//      'e': LowercaseLetter
//      ' ': SpaceSeparator
//      'd': LowercaseLetter
//      'o': LowercaseLetter
//      'w': LowercaseLetter
//      'n': LowercaseLetter
//      ' ': SpaceSeparator
//      't': LowercaseLetter
//      'h': LowercaseLetter
//      'e': LowercaseLetter
//      ' ': SpaceSeparator
//      'l': LowercaseLetter
//      'o': LowercaseLetter
//      'n': LowercaseLetter
//      'g': LowercaseLetter
//      ',': OtherPunctuation
//      ' ': SpaceSeparator
//      'n': LowercaseLetter
//      'a': LowercaseLetter
//      'r': LowercaseLetter
//      'r': LowercaseLetter
//      'o': LowercaseLetter
//      'w': LowercaseLetter
//      ',': OtherPunctuation
//      ' ': SpaceSeparator
//      's': LowercaseLetter
//      'e': LowercaseLetter
//      'c': LowercaseLetter
//      'l': LowercaseLetter
//      'u': LowercaseLetter
//      'd': LowercaseLetter
//      'e': LowercaseLetter
//      'd': LowercaseLetter
//      ' ': SpaceSeparator
//      'r': LowercaseLetter
//      'o': LowercaseLetter
//      'a': LowercaseLetter
//      'd': LowercaseLetter
//      '.': OtherPunctuation
Imports System.Globalization

Module Example1
    Public Sub Main()
        ' Define a string with a variety of character categories.
        Dim s As String = "The car drove down the narrow, secluded road."
        ' Determine the category of each character.
        For Each ch In s
            Console.WriteLine("'{0}': {1}", ch, Char.GetUnicodeCategory(ch))
        Next
    End Sub
End Module
' The example displays the following output:
'       'T': UppercaseLetter
'       'h': LowercaseLetter
'       'e': LowercaseLetter
'       ' ': SpaceSeparator
'       'r': LowercaseLetter
'       'e': LowercaseLetter
'       'd': LowercaseLetter
'       ' ': SpaceSeparator
'       'c': LowercaseLetter
'       'a': LowercaseLetter
'       'r': LowercaseLetter
'       ' ': SpaceSeparator
'       'd': LowercaseLetter
'       'r': LowercaseLetter
'       'o': LowercaseLetter
'       'v': LowercaseLetter
'       'e': LowercaseLetter
'       ' ': SpaceSeparator
'       'd': LowercaseLetter
'       'o': LowercaseLetter
'       'w': LowercaseLetter
'       'n': LowercaseLetter
'       ' ': SpaceSeparator
'       't': LowercaseLetter
'       'h': LowercaseLetter
'       'e': LowercaseLetter
'       ' ': SpaceSeparator
'       'l': LowercaseLetter
'       'o': LowercaseLetter
'       'n': LowercaseLetter
'       'g': LowercaseLetter
'       ',': OtherPunctuation
'       ' ': SpaceSeparator
'       'n': LowercaseLetter
'       'a': LowercaseLetter
'       'r': LowercaseLetter
'       'r': LowercaseLetter
'       'o': LowercaseLetter
'       'w': LowercaseLetter
'       ',': OtherPunctuation
'       ' ': SpaceSeparator
'       's': LowercaseLetter
'       'e': LowercaseLetter
'       'c': LowercaseLetter
'       'l': LowercaseLetter
'       'u': LowercaseLetter
'       'd': LowercaseLetter
'       'e': LowercaseLetter
'       'd': LowercaseLetter
'       ' ': SpaceSeparator
'       'r': LowercaseLetter
'       'o': LowercaseLetter
'       'a': LowercaseLetter
'       'd': LowercaseLetter
'       '.': OtherPunctuation

Secara internal, untuk karakter di luar rentang ASCII (U+0000 hingga U+00FF), metode GetUnicodeCategory bergantung pada kategori Unicode yang disediakan oleh kelas CharUnicodeInfo. Karakter Unicode diklasifikasikan berdasarkan Standar Unicode, Versi 8.0.0.

Karakter dan elemen teks

Karena satu karakter dapat diwakili oleh beberapa Char objek, tidak selalu bermakna untuk bekerja dengan objek individual Char . Misalnya, contoh berikut mengonversi titik kode Unicode yang mewakili angka Aegean nol hingga 9 ke unit kode yang dikodekan UTF-16. Karena secara keliru menyamakan Char objek dengan karakter, string yang dihasilkan dilaporkan secara tidak akurat memiliki 20 karakter.

using System;

public class Example5
{
    public static void Main()
    {
        string result = String.Empty;
        for (int ctr = 0x10107; ctr <= 0x10110; ctr++)  // Range of Aegean numbers.
            result += Char.ConvertFromUtf32(ctr);

        Console.WriteLine($"The string contains {result.Length} characters.");
    }
}
// The example displays the following output:
//     The string contains 20 characters.
open System

let result =
    [ for i in 0x10107..0x10110 do  // Range of Aegean numbers.
        Char.ConvertFromUtf32 i ]
    |> String.concat ""

printfn $"The string contains {result.Length} characters."


// The example displays the following output:
//     The string contains 20 characters.
Module Example5
    Public Sub Main()
        Dim result As String = String.Empty
        For ctr As Integer = &H10107 To &H10110     ' Range of Aegean numbers.
            result += Char.ConvertFromUtf32(ctr)
        Next
        Console.WriteLine("The string contains {0} characters.", result.Length)
    End Sub
End Module
' The example displays the following output:
'     The string contains 20 characters.

Anda dapat melakukan hal berikut untuk menghindari asumsi bahwa Char objek mewakili satu karakter:

  • Anda dapat bekerja dengan String objek secara keseluruhan alih-alih bekerja dengan karakter individualnya untuk mewakili dan menganalisis konten linguistik.

  • Anda dapat menggunakan String.EnumerateRunes seperti yang ditunjukkan dalam contoh berikut:

    int CountLetters(string s)
    {
        int letterCount = 0;
    
        foreach (Rune rune in s.EnumerateRunes())
        {
            if (Rune.IsLetter(rune))
            { letterCount++; }
        }
    
        return letterCount;
    }
    
    let countLetters (s: string) =
        let mutable letterCount = 0
    
        for rune in s.EnumerateRunes() do
            if Rune.IsLetter rune then
                letterCount <- letterCount + 1
    
        letterCount
    
  • Anda dapat menggunakan StringInfo kelas untuk bekerja dengan elemen teks alih-alih objek individual Char . Contoh berikut menggunakan StringInfo objek untuk menghitung jumlah elemen teks dalam string yang terdiri dari angka Aegea nol hingga sembilan. Karena pasangan pengganti dianggap sebagai satu karakter, ini secara benar melaporkan bahwa string berisi sepuluh karakter.

    using System;
    using System.Globalization;
    
    public class Example4
    {
        public static void Main()
        {
            string result = String.Empty;
            for (int ctr = 0x10107; ctr <= 0x10110; ctr++)  // Range of Aegean numbers.
                result += Char.ConvertFromUtf32(ctr);
    
            StringInfo si = new StringInfo(result);
            Console.WriteLine($"The string contains {si.LengthInTextElements} characters.");
        }
    }
    // The example displays the following output:
    //       The string contains 10 characters.
    
    open System
    open System.Globalization
    
    let result =
        [ for i in 0x10107..0x10110 do  // Range of Aegean numbers.
            Char.ConvertFromUtf32 i ]
        |> String.concat ""
    
    
    let si = StringInfo result
    printfn $"The string contains {si.LengthInTextElements} characters."
    
    // The example displays the following output:
    //       The string contains 10 characters.
    
    Imports System.Globalization
    
    Module Example6
        Public Sub Main()
            Dim result As String = String.Empty
            For ctr As Integer = &H10107 To &H10110     ' Range of Aegean numbers.
                result += Char.ConvertFromUtf32(ctr)
            Next
            Dim si As New StringInfo(result)
            Console.WriteLine("The string contains {0} characters.", si.LengthInTextElements)
        End Sub
    End Module
    ' The example displays the following output:
    '       The string contains 10 characters.
    
  • Jika string berisi karakter dasar yang memiliki satu atau beberapa karakter gabungan, Anda dapat memanggil String.Normalize metode untuk mengonversi substring ke satu unit kode yang dikodekan UTF-16. Contoh berikut memanggil String.Normalize metode untuk mengonversi karakter dasar U+0061 (LATIN SMALL LETTER A) dan menggabungkan karakter U+0308 (MENGGABUNGKAN DIAERESIS) ke U+00E4 (LATIN SMALL LETTER A WITH DIAERESIS).

    using System;
    
    public class Example2
    {
        public static void Main()
        {
            string combining = "\u0061\u0308";
            ShowString(combining);
    
            string normalized = combining.Normalize();
            ShowString(normalized);
        }
    
        private static void ShowString(string s)
        {
            Console.Write($"Length of string: {s.Length} (");
            for (int ctr = 0; ctr < s.Length; ctr++)
            {
                Console.Write($"U+{Convert.ToUInt16(s[ctr]):X4}");
                if (ctr != s.Length - 1) Console.Write(" ");
            }
            Console.WriteLine(")\n");
        }
    }
    // The example displays the following output:
    //       Length of string: 2 (U+0061 U+0308)
    //
    //       Length of string: 1 (U+00E4)
    
    open System
    
    let showString (s: string) =
        printf $"Length of string: {s.Length} ("
        for i = 0 to s.Length - 1 do
            printf $"U+{Convert.ToUInt16 s[i]:X4}"
            if i <> s.Length - 1 then printf " "
        printfn ")\n"
    
    let combining = "\u0061\u0308"
    showString combining
    
    let normalized = combining.Normalize()
    showString normalized
    
    // The example displays the following output:
    //       Length of string: 2 (U+0061 U+0308)
    //
    //       Length of string: 1 (U+00E4)
    
    Module Example3
        Public Sub Main()
            Dim combining As String = ChrW(&H61) + ChrW(&H308)
            ShowString(combining)
    
            Dim normalized As String = combining.Normalize()
            ShowString(normalized)
        End Sub
    
        Private Sub ShowString(s As String)
            Console.Write("Length of string: {0} (", s.Length)
            For ctr As Integer = 0 To s.Length - 1
                Console.Write("U+{0:X4}", Convert.ToUInt16(s(ctr)))
                If ctr <> s.Length - 1 Then Console.Write(" ")
            Next
            Console.WriteLine(")")
            Console.WriteLine()
        End Sub
    End Module
    ' The example displays the following output:
    '       Length of string: 2 (U+0061 U+0308)
    '       
    '       Length of string: 1 (U+00E4)
    

Operasi umum

Struktur Char menyediakan metode untuk membandingkan Char objek, mengonversi nilai objek saat ini Char ke objek jenis lain, dan menentukan kategori Unicode objek Char :

Untuk melakukan ini Gunakan metode ini System.Char
Membandingkan Char objek CompareTo dan Equals
Mengonversi titik kode menjadi string ConvertFromUtf32

Lihat juga jenisnya Rune .
Char Mengonversi objek atau sepasang Char objek pengganti menjadi titik kode Untuk satu karakter: Convert.ToInt32(Char)

Untuk pasangan pengganti atau karakter dalam string: Char.ConvertToUtf32

Lihat juga jenisnya Rune .
Mendapatkan kategori Unicode karakter GetUnicodeCategory

Lihat juga Rune.GetUnicodeCategory.
Menentukan apakah karakter berada dalam kategori Unicode tertentu seperti digit, huruf, tanda baca, karakter kontrol, dan sebagainya IsControl, IsDigit, IsHighSurrogate, IsLetter, IsLetterOrDigit, IsLower, IsLowSurrogate, IsNumber, IsPunctuation, IsSeparator, IsSurrogate, IsSurrogatePair, IsSymbol, IsUpper, dan IsWhiteSpace

Lihat juga metode-metode yang sesuai pada tipe Rune.
Char Mengonversi objek yang mewakili angka menjadi tipe nilai numerik GetNumericValue

Lihat juga Rune.GetNumericValue.
Mengonversi karakter dalam string menjadi Char objek Parse dan TryParse
Char Mengonversi objek menjadi String objek ToString
Mengubah huruf besar/kecil pada objek Char ToLower, ToLowerInvariant, ToUpper, dan ToUpperInvariant

Lihat juga metode-metode yang sesuai pada tipe Rune.

Nilai char dan interoperabilitas

Ketika jenis terkelola Char , yang diwakili sebagai unit kode yang dikodekan Unicode UTF-16, diteruskan ke kode yang tidak terkelola, marshaller interop mengonversi set karakter ke ANSI secara default. Anda dapat menerapkan atribut DllImportAttribute pada deklarasi pemanggilan platform dan atribut StructLayoutAttribute pada deklarasi interop COM untuk mengontrol set karakter yang digunakan oleh tipe yang dimarshal Char.

Bidang

Nama Deskripsi
MaxValue

Mewakili nilai terbesar yang mungkin dari .Char Bidang ini konstan.

MinValue

Mewakili nilai sekecil mungkin dari Char. Bidang ini konstan.

Metode

Nama Deskripsi
CompareTo(Char)

Membandingkan instans ini dengan objek tertentu Char dan menunjukkan apakah instans ini mendahului, mengikuti, atau muncul dalam posisi yang sama dalam urutan pengurutan sebagai objek yang ditentukan Char .

CompareTo(Object)

Membandingkan instans ini dengan objek tertentu dan menunjukkan apakah instans ini mendahului, mengikuti, atau muncul dalam posisi yang sama dalam urutan pengurutan seperti yang ditentukan Object.

ConvertFromUtf32(Int32)

Mengonversi titik kode Unicode yang ditentukan menjadi string yang dikodekan UTF-16.

ConvertToUtf32(Char, Char)

Mengonversi nilai pasangan pengganti yang dikodekan UTF-16 menjadi titik kode Unicode.

ConvertToUtf32(String, Int32)

Mengonversi nilai karakter yang dikodekan UTF-16 atau pasangan pengganti pada posisi tertentu dalam string menjadi titik kode Unicode.

Equals(Char, StringComparison)

Mewakili karakter sebagai unit kode UTF-16.

Equals(Char)

Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek yang ditentukan Char .

Equals(Object)

Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

GetHashCode()

Mengembalikan kode hash untuk instans ini.

GetNumericValue(Char)

Mengonversi karakter Unicode numerik yang ditentukan menjadi angka titik mengambang presisi ganda.

GetNumericValue(String, Int32)

Mengonversi karakter Unicode numerik pada posisi yang ditentukan dalam string tertentu menjadi angka titik floating presisi ganda.

GetTypeCode()

Mengembalikan TypeCode untuk jenis Charnilai .

GetUnicodeCategory(Char)

Mengategorikan karakter Unicode tertentu ke dalam grup yang diidentifikasi oleh salah UnicodeCategory satu nilai.

GetUnicodeCategory(String, Int32)

Mengategorikan karakter pada posisi yang ditentukan dalam string tertentu ke dalam grup yang diidentifikasi oleh salah UnicodeCategory satu nilai.

IsAscii(Char)

Mengembalikan true jika c adalah karakter ASCII ([ U+0000..U+007F ]).

IsAsciiDigit(Char)

Menunjukkan apakah karakter dikategorikan sebagai digit ASCII.

IsAsciiHexDigit(Char)

Menunjukkan apakah karakter dikategorikan sebagai digit heksadesimal ASCII.

IsAsciiHexDigitLower(Char)

Menunjukkan apakah karakter dikategorikan sebagai digit heksadesimal huruf kecil ASCII.

IsAsciiHexDigitUpper(Char)

Menunjukkan apakah karakter dikategorikan sebagai digit heksadesimal huruf besar ASCII.

IsAsciiLetter(Char)

Menunjukkan apakah karakter dikategorikan sebagai huruf ASCII.

IsAsciiLetterLower(Char)

Menunjukkan apakah karakter dikategorikan sebagai huruf KECIL ASCII.

IsAsciiLetterOrDigit(Char)

Menunjukkan apakah karakter dikategorikan sebagai huruf atau digit ASCII.

IsAsciiLetterUpper(Char)

Menunjukkan apakah karakter dikategorikan sebagai huruf BESAR ASCII.

IsBetween(Char, Char, Char)

Menunjukkan apakah karakter berada dalam rentang inklusif yang ditentukan.

IsControl(Char)

Menunjukkan apakah karakter Unicode yang ditentukan dikategorikan sebagai karakter kontrol.

IsControl(String, Int32)

Menunjukkan apakah karakter pada posisi yang ditentukan dalam string tertentu dikategorikan sebagai karakter kontrol.

IsDigit(Char)

Menunjukkan apakah karakter Unicode yang ditentukan dikategorikan sebagai digit desimal.

IsDigit(String, Int32)

Menunjukkan apakah karakter pada posisi yang ditentukan dalam string tertentu dikategorikan sebagai digit desimal.

IsHighSurrogate(Char)

Menunjukkan apakah objek yang ditentukan Char adalah pengganti tinggi.

IsHighSurrogate(String, Int32)

Menunjukkan apakah Char objek pada posisi yang ditentukan dalam string adalah pengganti tinggi.

IsLetter(Char)

Menunjukkan apakah karakter Unicode yang ditentukan dikategorikan sebagai huruf Unicode.

IsLetter(String, Int32)

Menunjukkan apakah karakter pada posisi yang ditentukan dalam string tertentu dikategorikan sebagai huruf Unicode.

IsLetterOrDigit(Char)

Menunjukkan apakah karakter Unicode yang ditentukan dikategorikan sebagai huruf atau digit desimal.

IsLetterOrDigit(String, Int32)

Menunjukkan apakah karakter pada posisi yang ditentukan dalam string tertentu dikategorikan sebagai huruf atau digit desimal.

IsLower(Char)

Menunjukkan apakah karakter Unicode yang ditentukan dikategorikan sebagai huruf kecil.

IsLower(String, Int32)

Menunjukkan apakah karakter pada posisi yang ditentukan dalam string tertentu dikategorikan sebagai huruf kecil.

IsLowSurrogate(Char)

Menunjukkan apakah objek yang ditentukan Char adalah pengganti rendah.

IsLowSurrogate(String, Int32)

Menunjukkan apakah Char objek pada posisi yang ditentukan dalam string adalah pengganti rendah.

IsNumber(Char)

Menunjukkan apakah karakter Unicode yang ditentukan dikategorikan sebagai angka.

IsNumber(String, Int32)

Menunjukkan apakah karakter pada posisi yang ditentukan dalam string tertentu dikategorikan sebagai angka.

IsPunctuation(Char)

Menunjukkan apakah karakter Unicode yang ditentukan dikategorikan sebagai tanda baca.

IsPunctuation(String, Int32)

Menunjukkan apakah karakter pada posisi yang ditentukan dalam string tertentu dikategorikan sebagai tanda baca.

IsSeparator(Char)

Menunjukkan apakah karakter Unicode yang ditentukan dikategorikan sebagai karakter pemisah.

IsSeparator(String, Int32)

Menunjukkan apakah karakter pada posisi yang ditentukan dalam string tertentu dikategorikan sebagai karakter pemisah.

IsSurrogate(Char)

Menunjukkan apakah karakter yang ditentukan memiliki unit kode pengganti.

IsSurrogate(String, Int32)

Menunjukkan apakah karakter pada posisi yang ditentukan dalam string tertentu memiliki unit kode pengganti.

IsSurrogatePair(Char, Char)

Menunjukkan apakah dua objek yang ditentukan Char membentuk pasangan pengganti.

IsSurrogatePair(String, Int32)

Menunjukkan apakah dua objek yang berdekatan Char pada posisi tertentu dalam string membentuk pasangan pengganti.

IsSymbol(Char)

Menunjukkan apakah karakter Unicode yang ditentukan dikategorikan sebagai karakter simbol.

IsSymbol(String, Int32)

Menunjukkan apakah karakter pada posisi yang ditentukan dalam string tertentu dikategorikan sebagai karakter simbol.

IsUpper(Char)

Menunjukkan apakah karakter Unicode yang ditentukan dikategorikan sebagai huruf besar.

IsUpper(String, Int32)

Menunjukkan apakah karakter pada posisi yang ditentukan dalam string tertentu dikategorikan sebagai huruf besar.

IsWhiteSpace(Char)

Menunjukkan apakah karakter Unicode yang ditentukan dikategorikan sebagai spasi kosong.

IsWhiteSpace(String, Int32)

Menunjukkan apakah karakter pada posisi yang ditentukan dalam string tertentu dikategorikan sebagai spasi kosong.

Parse(String)

Mengonversi nilai string yang ditentukan ke karakter Unicode yang setara.

ToLower(Char, CultureInfo)

Mengonversi nilai karakter Unicode tertentu ke yang setara dengan huruf kecil menggunakan informasi pemformatan khusus budaya tertentu.

ToLower(Char)

Mengonversi nilai karakter Unicode menjadi ekuivalen huruf kecilnya.

ToLowerInvariant(Char)

Mengonversi nilai karakter Unicode menjadi huruf kecil yang setara menggunakan aturan casing dari budaya invarian.

ToString()

Mengonversi nilai instans ini ke representasi string yang setara.

ToString(Char)

Mengonversi karakter Unicode yang ditentukan ke representasi string yang setara.

ToString(IFormatProvider)

Mengonversi nilai instans ini ke representasi string yang setara menggunakan informasi format khusus budaya yang ditentukan.

ToUpper(Char, CultureInfo)

Mengonversi nilai karakter Unicode tertentu ke huruf besar yang setara menggunakan informasi pemformatan khusus budaya tertentu.

ToUpper(Char)

Mengonversi nilai karakter Unicode menjadi ekuivalen huruf besarnya.

ToUpperInvariant(Char)

Mengonversi nilai karakter Unicode ke huruf besar yang setara menggunakan aturan casing budaya invariant.

TryParse(String, Char)

Mengonversi nilai string yang ditentukan ke karakter Unicode yang setara. Kode pengembalian menunjukkan apakah konversi berhasil atau gagal.

Implementasi Antarmuka Eksplisit

Nama Deskripsi
IAdditionOperators<Char,Char,Char>.Addition(Char, Char)

Menambahkan dua nilai bersama-sama untuk menghitung jumlahnya.

IAdditionOperators<Char,Char,Char>.CheckedAddition(Char, Char)

Menambahkan dua nilai bersama-sama untuk menghitung jumlahnya.

IAdditiveIdentity<Char,Char>.AdditiveIdentity

Mendapatkan identitas aditif dari jenis saat ini.

IBinaryInteger<Char>.GetByteCount()

Mendapatkan jumlah byte yang akan ditulis sebagai bagian TryWriteLittleEndian(Span<Byte>, Int32)dari .

IBinaryInteger<Char>.GetShortestBitLength()

Mendapatkan panjang, dalam bit, dari representasi pelengkap dua terpendek dari nilai saat ini.

IBinaryInteger<Char>.LeadingZeroCount(Char)

Menghitung jumlah bit nol di depan dalam sebuah nilai.

IBinaryInteger<Char>.Log10(Char)

Mewakili karakter sebagai unit kode UTF-16.

IBinaryInteger<Char>.PopCount(Char)

Menghitung jumlah bit yang diatur dalam nilai.

IBinaryInteger<Char>.RotateLeft(Char, Int32)

Memutar nilai yang ditinggalkan oleh jumlah tertentu.

IBinaryInteger<Char>.RotateRight(Char, Int32)

Memutar nilai tepat dengan jumlah tertentu.

IBinaryInteger<Char>.TrailingZeroCount(Char)

Menghitung jumlah bit nol berikutnya dalam sebuah nilai.

IBinaryInteger<Char>.TryReadBigEndian(ReadOnlySpan<Byte>, Boolean, Char)

Mewakili karakter sebagai unit kode UTF-16.

IBinaryInteger<Char>.TryReadLittleEndian(ReadOnlySpan<Byte>, Boolean, Char)

Mewakili karakter sebagai unit kode UTF-16.

IBinaryInteger<Char>.TryWriteBigEndian(Span<Byte>, Int32)

Mencoba menulis nilai saat ini, dalam format big-endian, ke rentang tertentu.

IBinaryInteger<Char>.TryWriteLittleEndian(Span<Byte>, Int32)

Mencoba menulis nilai saat ini, dalam format little-endian, ke rentang tertentu.

IBinaryNumber<Char>.AllBitsSet

Mendapatkan instans jenis biner tempat semua bit diatur.

IBinaryNumber<Char>.IsPow2(Char)

Menentukan apakah nilai adalah kekuatan dua.

IBinaryNumber<Char>.Log2(Char)

Menghitung log2 dari nilai.

IBitwiseOperators<Char,Char,Char>.BitwiseAnd(Char, Char)

Menghitung bitwise-dan dari dua nilai.

IBitwiseOperators<Char,Char,Char>.BitwiseOr(Char, Char)

Menghitung bitwise-atau dari dua nilai.

IBitwiseOperators<Char,Char,Char>.ExclusiveOr(Char, Char)

Menghitung nilai eksklusif atau dari dua nilai.

IBitwiseOperators<Char,Char,Char>.OnesComplement(Char)

Menghitung representasi pelengkap seseorang dari nilai tertentu.

IComparable.CompareTo(Object)

Membandingkan instans saat ini dengan objek lain dengan jenis yang sama dan mengembalikan bilangan bulat yang menunjukkan apakah instans saat ini mendahului, mengikuti, atau terjadi dalam posisi yang sama dalam urutan pengurutan seperti objek lainnya.

IComparisonOperators<Char,Char,Boolean>.GreaterThan(Char, Char)

Membandingkan dua nilai untuk menentukan mana yang lebih besar.

IComparisonOperators<Char,Char,Boolean>.GreaterThanOrEqual(Char, Char)

Membandingkan dua nilai untuk menentukan mana yang lebih besar atau sama.

IComparisonOperators<Char,Char,Boolean>.LessThan(Char, Char)

Membandingkan dua nilai untuk menentukan mana yang kurang.

IComparisonOperators<Char,Char,Boolean>.LessThanOrEqual(Char, Char)

Membandingkan dua nilai untuk menentukan mana yang kurang atau sama.

IConvertible.GetTypeCode()

Mengembalikan untuk instans TypeCode ini.

IConvertible.ToBoolean(IFormatProvider)

Catatan Konversi ini tidak didukung. Mencoba melakukannya akan mengakibatkan InvalidCastException.

IConvertible.ToByte(IFormatProvider)

Untuk deskripsi anggota ini, lihat ToByte(IFormatProvider).

IConvertible.ToChar(IFormatProvider)

Untuk deskripsi anggota ini, lihat ToChar(IFormatProvider).

IConvertible.ToDateTime(IFormatProvider)

Catatan Konversi ini tidak didukung. Mencoba melakukannya akan mengakibatkan InvalidCastException.

IConvertible.ToDecimal(IFormatProvider)

Catatan Konversi ini tidak didukung. Mencoba melakukannya akan mengakibatkan InvalidCastException.

IConvertible.ToDouble(IFormatProvider)

Catatan Konversi ini tidak didukung. Mencoba melakukannya akan mengakibatkan InvalidCastException.

IConvertible.ToInt16(IFormatProvider)

Untuk deskripsi anggota ini, lihat ToInt16(IFormatProvider).

IConvertible.ToInt32(IFormatProvider)

Untuk deskripsi anggota ini, lihat ToInt32(IFormatProvider).

IConvertible.ToInt64(IFormatProvider)

Untuk deskripsi anggota ini, lihat ToInt64(IFormatProvider).

IConvertible.ToSByte(IFormatProvider)

Untuk deskripsi anggota ini, lihat ToSByte(IFormatProvider).

IConvertible.ToSingle(IFormatProvider)

Catatan Konversi ini tidak didukung. Mencoba melakukannya akan mengakibatkan InvalidCastException.

IConvertible.ToString(IFormatProvider)

Mengonversi nilai instans ini menjadi string yang setara, menggunakan informasi pemformatan khusus budaya yang ditentukan.

IConvertible.ToType(Type, IFormatProvider)

Untuk deskripsi anggota ini, lihat ToType(Type, IFormatProvider).

IConvertible.ToUInt16(IFormatProvider)

Untuk deskripsi anggota ini, lihat ToUInt16(IFormatProvider).

IConvertible.ToUInt32(IFormatProvider)

Untuk deskripsi anggota ini, lihat ToUInt32(IFormatProvider).

IConvertible.ToUInt64(IFormatProvider)

Untuk deskripsi anggota ini, lihat ToUInt64(IFormatProvider).

IDecrementOperators<Char>.CheckedDecrement(Char)

Mengurangi nilai.

IDecrementOperators<Char>.Decrement(Char)

Mengurangi nilai.

IDivisionOperators<Char,Char,Char>.Division(Char, Char)

Membagi satu nilai dengan nilai lainnya untuk menghitung kuotanya.

IEqualityOperators<Char,Char,Boolean>.Equality(Char, Char)

Membandingkan dua nilai untuk menentukan kesetaraan.

IEqualityOperators<Char,Char,Boolean>.Inequality(Char, Char)

Membandingkan dua nilai untuk menentukan ketidaksetaraan.

IFormattable.ToString(String, IFormatProvider)

Memformat nilai instans saat ini menggunakan format yang ditentukan.

IIncrementOperators<Char>.CheckedIncrement(Char)

Menaikkan nilai.

IIncrementOperators<Char>.Increment(Char)

Menaikkan nilai.

IMinMaxValue<Char>.MaxValue

Mendapatkan nilai maksimum dari jenis saat ini.

IMinMaxValue<Char>.MinValue

Mendapatkan nilai minimum dari jenis saat ini.

IModulusOperators<Char,Char,Char>.Modulus(Char, Char)

Membagi dua nilai bersama-sama untuk menghitung modulus atau sisanya.

IMultiplicativeIdentity<Char,Char>.MultiplicativeIdentity

Mendapatkan identitas multiplikatif dari jenis saat ini.

IMultiplyOperators<Char,Char,Char>.CheckedMultiply(Char, Char)

Mengalikan dua nilai bersama-sama untuk menghitung produknya.

IMultiplyOperators<Char,Char,Char>.Multiply(Char, Char)

Mengalikan dua nilai bersama-sama untuk menghitung produknya.

INumberBase<Char>.Abs(Char)

Menghitung absolut nilai.

INumberBase<Char>.IsCanonical(Char)

Menentukan apakah nilai berada dalam representasi kanonisnya.

INumberBase<Char>.IsComplexNumber(Char)

Menentukan apakah nilai mewakili bilangan kompleks.

INumberBase<Char>.IsEvenInteger(Char)

Menentukan apakah nilai mewakili angka integral genap.

INumberBase<Char>.IsFinite(Char)

Menentukan apakah nilai terbatas.

INumberBase<Char>.IsImaginaryNumber(Char)

Menentukan apakah nilai mewakili angka imajiner murni.

INumberBase<Char>.IsInfinity(Char)

Menentukan apakah nilai tidak terbatas.

INumberBase<Char>.IsInteger(Char)

Menentukan apakah nilai mewakili angka integral.

INumberBase<Char>.IsNaN(Char)

Menentukan apakah nilainya adalah NaN.

INumberBase<Char>.IsNegative(Char)

Menentukan apakah nilai negatif.

INumberBase<Char>.IsNegativeInfinity(Char)

Menentukan apakah nilai adalah tak terbatas negatif.

INumberBase<Char>.IsNormal(Char)

Menentukan apakah nilai normal.

INumberBase<Char>.IsOddInteger(Char)

Menentukan apakah nilai mewakili angka integral ganjil.

INumberBase<Char>.IsPositive(Char)

Menentukan apakah nilai positif.

INumberBase<Char>.IsPositiveInfinity(Char)

Menentukan apakah nilai adalah tak terbatas positif.

INumberBase<Char>.IsRealNumber(Char)

Menentukan apakah nilai mewakili angka riil.

INumberBase<Char>.IsSubnormal(Char)

Menentukan apakah nilai adalah subnormal.

INumberBase<Char>.IsZero(Char)

Menentukan apakah nilai adalah nol.

INumberBase<Char>.MaxMagnitude(Char, Char)

Membandingkan dua nilai dengan komputasi yang lebih besar.

INumberBase<Char>.MaxMagnitudeNumber(Char, Char)

Membandingkan dua nilai dengan komputasi yang memiliki besaran lebih besar dan mengembalikan nilai lain jika input adalah NaN.

INumberBase<Char>.MinMagnitude(Char, Char)

Membandingkan dua nilai dengan komputasi yang lebih rendah.

INumberBase<Char>.MinMagnitudeNumber(Char, Char)

Membandingkan dua nilai dengan komputasi yang memiliki besaran lebih kecil dan mengembalikan nilai lain jika input adalah NaN.

INumberBase<Char>.MultiplyAddEstimate(Char, Char, Char)

Menghitung perkiraan (left * right) + . addend

INumberBase<Char>.One

Mendapatkan nilai 1 untuk jenis tersebut.

INumberBase<Char>.Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider)

Mengurai rentang karakter menjadi nilai.

INumberBase<Char>.Parse(String, NumberStyles, IFormatProvider)

Mengurai string menjadi nilai.

INumberBase<Char>.Radix

Mendapatkan radix, atau basis, untuk tipe tersebut.

INumberBase<Char>.TryConvertFromChecked<TOther>(TOther, Char)

Mewakili karakter sebagai unit kode UTF-16.

INumberBase<Char>.TryConvertFromSaturating<TOther>(TOther, Char)

Mewakili karakter sebagai unit kode UTF-16.

INumberBase<Char>.TryConvertFromTruncating<TOther>(TOther, Char)

Mewakili karakter sebagai unit kode UTF-16.

INumberBase<Char>.TryConvertToChecked<TOther>(Char, TOther)

Mencoba mengonversi instans jenis saat ini ke jenis lain, melemparkan pengecualian luapan untuk nilai apa pun yang berada di luar rentang yang dapat diwakili dari jenis saat ini.

INumberBase<Char>.TryConvertToSaturating<TOther>(Char, TOther)

Mencoba mengonversi instans jenis saat ini ke jenis lain, menjenuhkan nilai apa pun yang berada di luar rentang yang dapat diwakili dari jenis saat ini.

INumberBase<Char>.TryConvertToTruncating<TOther>(Char, TOther)

Mencoba mengonversi instans jenis saat ini ke jenis lain, memotong nilai apa pun yang berada di luar rentang yang dapat diwakili dari jenis saat ini.

INumberBase<Char>.TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Char)

Mewakili karakter sebagai unit kode UTF-16.

INumberBase<Char>.TryParse(String, NumberStyles, IFormatProvider, Char)

Mewakili karakter sebagai unit kode UTF-16.

INumberBase<Char>.Zero

Mendapatkan nilai 0 untuk jenis tersebut.

IParsable<Char>.Parse(String, IFormatProvider)

Mengurai string menjadi nilai.

IParsable<Char>.TryParse(String, IFormatProvider, Char)

Mewakili karakter sebagai unit kode UTF-16.

IShiftOperators<Char,Int32,Char>.LeftShift(Char, Int32)

Menggeser nilai yang ditinggalkan oleh jumlah tertentu.

IShiftOperators<Char,Int32,Char>.RightShift(Char, Int32)

Menggeser nilai ke kanan dengan jumlah tertentu.

IShiftOperators<Char,Int32,Char>.UnsignedRightShift(Char, Int32)

Menggeser nilai ke kanan dengan jumlah tertentu.

ISpanFormattable.TryFormat(Span<Char>, Int32, ReadOnlySpan<Char>, IFormatProvider)

Mencoba memformat nilai instans saat ini ke dalam rentang karakter yang disediakan.

ISpanParsable<Char>.Parse(ReadOnlySpan<Char>, IFormatProvider)

Mengurai rentang karakter menjadi nilai.

ISpanParsable<Char>.TryParse(ReadOnlySpan<Char>, IFormatProvider, Char)

Mewakili karakter sebagai unit kode UTF-16.

ISubtractionOperators<Char,Char,Char>.CheckedSubtraction(Char, Char)

Mengurangi dua nilai untuk menghitung perbedaannya.

ISubtractionOperators<Char,Char,Char>.Subtraction(Char, Char)

Mengurangi dua nilai untuk menghitung perbedaannya.

IUnaryNegationOperators<Char,Char>.CheckedUnaryNegation(Char)

Menghitung negasi nilai unary yang diperiksa.

IUnaryNegationOperators<Char,Char>.UnaryNegation(Char)

Menghitung negasi nilai yang tidak biasa.

IUnaryPlusOperators<Char,Char>.UnaryPlus(Char)

Menghitung nilai plus unary.

IUtf8SpanFormattable.TryFormat(Span<Byte>, Int32, ReadOnlySpan<Char>, IFormatProvider)

Mencoba memformat nilai instans saat ini sebagai UTF-8 ke dalam rentang byte yang disediakan.

IUtf8SpanParsable<Char>.Parse(ReadOnlySpan<Byte>, IFormatProvider)

Mewakili karakter sebagai unit kode UTF-16.

IUtf8SpanParsable<Char>.TryParse(ReadOnlySpan<Byte>, IFormatProvider, Char)

Mewakili karakter sebagai unit kode UTF-16.

Berlaku untuk

Keamanan Thread

Semua anggota jenis ini aman utas. Anggota yang tampaknya mengubah status instans benar-benar mengembalikan instans baru yang diinisialisasi dengan nilai baru. Seperti halnya jenis lain, membaca dan menulis ke variabel bersama yang berisi instans jenis ini harus dilindungi oleh kunci untuk menjamin keamanan utas.

Lihat juga