Char Struct
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta un carattere come unità di codice 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)
- Ereditarietà
- Attributi
- Implementazioni
-
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>
Esempio
Nell'esempio di codice seguente vengono illustrati alcuni dei metodi in 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
Commenti
La struttura Char rappresenta i punti di codice Unicode usando la codifica UTF-16. Il valore di un oggetto Char è il valore numerico a 16 bit (ordinale).
Se non si ha familiarità con Unicode, valori scalari, punti codice, coppie di surrogati, UTF-16 e tipo Rune, vedere Introduzione alla codifica dei caratteri in .NET.
Questo articolo esamina la relazione tra un oggetto Char e un carattere e illustra alcune attività comuni eseguite con Char istanze. È consigliabile considerare il tipo di Rune, introdotto in .NET Core 3.0, come alternativa a Char per eseguire alcune di queste attività.
Oggetti Char, caratteri Unicode e stringhe
Un oggetto String è una raccolta sequenziale di strutture Char che rappresenta una stringa di testo. La maggior parte dei caratteri Unicode può essere rappresentata da un singolo oggetto Char, ma un carattere codificato come carattere di base, coppia di surrogati e/o sequenza di caratteri combinati è rappresentato da più oggetti Char. Per questo motivo, una struttura Char in un oggetto String non è necessariamente equivalente a un singolo carattere Unicode.
Più unità di codice a 16 bit vengono usate per rappresentare singoli caratteri Unicode nei casi seguenti:
Glifi, che possono essere costituiti da un singolo carattere o da un carattere di base seguito da uno o più caratteri combinati. Ad esempio, il carattere ä è rappresentato da un oggetto Char la cui unità di codice è U+0061 seguita da un oggetto Char la cui unità di codice è U+0308. Il carattere ä può essere definito anche da un singolo oggetto Char con un'unità di codice U+00E4. Nell'esempio seguente viene illustrato che il carattere ä è costituito da due oggetti Char.
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: ' äCaratteri esterni al Piano Multilingue di Base Unicode (BMP). Unicode supporta sedici piani oltre al BMP, che rappresenta il piano 0. Un punto di codice Unicode è rappresentato in UTF-32 da un valore a 21 bit che include il piano. Ad esempio, U+1D160 rappresenta il carattere MUSICAL SYMBOL OTTAVO NOTA. Poiché la codifica UTF-16 ha solo 16 bit, i caratteri esterni al BMP sono rappresentati da coppie di surrogati in UTF-16. L'esempio seguente illustra che l'equivalente UTF-32 di U+1D160, il carattere MUSICAL SYMBOL EIGHTH NOTE, è U+D834 U+DD60. U+D834 è il surrogato alto; i surrogati alti vanno da U+D800 a U+DBFF. U+DD60 è il surrogato basso; i surrogati bassi vanno da U+DC00 a 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-16open 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-16Imports 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
Caratteri e categorie di caratteri
Ogni carattere Unicode o coppia di surrogati valida appartiene a una categoria Unicode. In .NET le categorie Unicode sono rappresentate dai membri dell'enumerazione UnicodeCategory e includono valori come UnicodeCategory.CurrencySymbol, UnicodeCategory.LowercaseLettere UnicodeCategory.SpaceSeparator, ad esempio.
Per determinare la categoria Unicode di un carattere, chiamare il metodo GetUnicodeCategory. Nell'esempio seguente, ad esempio, viene chiamato il GetUnicodeCategory per visualizzare la categoria Unicode di ogni carattere in una stringa. L'esempio funziona correttamente solo se nell'istanza di String non sono presenti coppie di surrogati.
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
Internamente, per i caratteri esterni all'intervallo ASCII (da U+0000 a U+00FF), il metodo GetUnicodeCategory dipende dalle categorie Unicode segnalate dalla classe CharUnicodeInfo. I caratteri Unicode vengono classificati in base allo standard Unicode versione 8.0.0.
Caratteri ed elementi di testo
Poiché un singolo carattere può essere rappresentato da più oggetti Char, non è sempre significativo lavorare con singoli oggetti Char. L'esempio seguente, ad esempio, converte i punti di codice Unicode che rappresentano i numeri dell'Egeo da zero a 9 in unità di codice con codifica UTF-16. Poiché equipara erroneamente gli oggetti Char ai caratteri, riporta inaccuratamente che la stringa risultante ha 20 caratteri.
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.
È possibile eseguire le operazioni seguenti per evitare il presupposto che un oggetto Char rappresenti un singolo carattere:
È possibile usare un oggetto String nella sua interezza invece di lavorare con i singoli caratteri per rappresentare e analizzare il contenuto linguistico.
È possibile usare String.EnumerateRunes come illustrato nell'esempio seguente:
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È possibile usare la classe StringInfo per usare gli elementi di testo anziché i singoli oggetti Char. Nell'esempio seguente viene utilizzato l'oggetto StringInfo per contare il numero di elementi di testo in una stringa costituita dai numeri dell'Mar Egeo da zero a nove. Poiché considera una coppia di surrogati un singolo carattere, segnala correttamente che la stringa contiene dieci caratteri.
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.Se una stringa contiene un carattere di base con uno o più caratteri combinati, è possibile chiamare il metodo String.Normalize per convertire la sottostringa in una singola unità di codice con codifica UTF-16. Nell'esempio seguente viene chiamato il metodo String.Normalize per convertire il carattere base U+0061 (LETTERA MINUSCOLA LATINA A) e il carattere combinato U+0308 (DIAERESI COMBINATA) in U+00E4 (LETTERA MINUSCOLA LATINA A CON DIAERESI).
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)
Operazioni comuni
La struttura Char fornisce metodi per confrontare Char oggetti, convertire il valore dell'oggetto Char corrente in un oggetto di un altro tipo e determinare la categoria Unicode di un oggetto Char:
| Per farlo | Usa questi metodi System.Char |
|---|---|
| Confrontare gli oggetti Char | CompareTo e Equals |
| Convertire un punto di codice in una stringa | ConvertFromUtf32 Vedi anche il tipo Rune. |
| Convertire un oggetto Char o una coppia surrogata di oggetti Char in un punto di codice | Per un singolo carattere: Convert.ToInt32(Char) Per una coppia di surrogati o un carattere in una stringa: Char.ConvertToUtf32 Vedi anche il tipo Rune. |
| Ottenere la categoria Unicode di un carattere | GetUnicodeCategory Vedi anche Rune.GetUnicodeCategory. |
| Determinare se un carattere si trova in una determinata categoria Unicode, ad esempio cifra, lettera, punteggiatura, carattere di controllo e così via |
IsControl, IsDigit, IsHighSurrogate, IsLetter, IsLetterOrDigit, IsLower, IsLowSurrogate, IsNumber, IsPunctuation, IsSeparator, IsSurrogate, IsSurrogatePair, IsSymbol, IsUppere IsWhiteSpace Vedere anche i metodi corrispondenti nel tipo Rune. |
| Convertire un oggetto Char che rappresenta un numero in un tipo valore numerico | GetNumericValue Vedi anche Rune.GetNumericValue. |
| Convertire un carattere in una stringa in un oggetto Char | Parse e TryParse |
| Convertire un oggetto Char in un oggetto String | ToString |
| Modificare il caso di un oggetto Char |
ToLower, ToLowerInvariant, ToUppere ToUpperInvariant Vedere anche i metodi corrispondenti nel tipo Rune. |
Valori di 'char' e interoperabilità
Quando un tipo di Char gestito, rappresentato come unità di codice con codifica UTF-16 Unicode, viene passato al codice non gestito, il marshaller di interoperabilità converte il set di caratteri in ANSI per impostazione predefinita. È possibile applicare l'attributo DllImportAttribute alle dichiarazioni platform invoke e all'attributo StructLayoutAttribute a una dichiarazione di interoperabilità COM per controllare il set di caratteri utilizzato da un tipo di Char sottoposto a marshalling.
Campi
| Nome | Descrizione |
|---|---|
| MaxValue |
Rappresenta il valore massimo possibile di un oggetto Char. Questo campo è costante. |
| MinValue |
Rappresenta il valore più piccolo possibile di un oggetto Char. Questo campo è costante. |
Metodi
| Nome | Descrizione |
|---|---|
| CompareTo(Char) |
Confronta questa istanza con un oggetto specificato Char e indica se questa istanza precede, segue o viene visualizzata nella stessa posizione nell'ordinamento dell'oggetto specificato Char . |
| CompareTo(Object) |
Confronta questa istanza con un oggetto specificato e indica se questa istanza precede, segue o viene visualizzata nella stessa posizione nell'ordinamento dell'oggetto specificato Object. |
| ConvertFromUtf32(Int32) |
Converte il punto di codice Unicode specificato in una stringa con codifica UTF-16. |
| ConvertToUtf32(Char, Char) |
Converte il valore di una coppia di surrogati con codifica UTF-16 in un punto di codice Unicode. |
| ConvertToUtf32(String, Int32) |
Converte il valore di una coppia di caratteri o surrogati con codifica UTF-16 in una posizione specificata in una stringa in un punto di codice Unicode. |
| Equals(Char, StringComparison) |
Rappresenta un carattere come unità di codice UTF-16. |
| Equals(Char) |
Restituisce un valore che indica se questa istanza è uguale all'oggetto specificato Char . |
| Equals(Object) |
Restituisce un valore che indica se questa istanza è uguale a un oggetto specificato. |
| GetHashCode() |
Restituisce il codice hash per questa istanza. |
| GetNumericValue(Char) |
Converte il carattere Unicode numerico specificato in un numero a virgola mobile a precisione doppia. |
| GetNumericValue(String, Int32) |
Converte il carattere Unicode numerico nella posizione specificata in una stringa specificata in un numero a virgola mobile a precisione doppia. |
| GetTypeCode() | |
| GetUnicodeCategory(Char) |
Classifica un carattere Unicode specificato in un gruppo identificato da uno dei UnicodeCategory valori. |
| GetUnicodeCategory(String, Int32) |
Classifica il carattere in corrispondenza della posizione specificata in una stringa specificata in un gruppo identificato da uno dei UnicodeCategory valori. |
| IsAscii(Char) |
Restituisce |
| IsAsciiDigit(Char) |
Indica se un carattere è categorizzato come cifra ASCII. |
| IsAsciiHexDigit(Char) |
Indica se un carattere è categorizzato come cifra esadecimale ASCII. |
| IsAsciiHexDigitLower(Char) |
Indica se un carattere è categorizzato come cifra esadecimale ASCII minuscola. |
| IsAsciiHexDigitUpper(Char) |
Indica se un carattere è categorizzato come cifra esadecimale ASCII maiuscola. |
| IsAsciiLetter(Char) |
Indica se un carattere è categorizzato come lettera ASCII. |
| IsAsciiLetterLower(Char) |
Indica se un carattere è categorizzato come lettera ASCII minuscola. |
| IsAsciiLetterOrDigit(Char) |
Indica se un carattere è categorizzato come lettera o cifra ASCII. |
| IsAsciiLetterUpper(Char) |
Indica se un carattere è categorizzato come lettera ASCII maiuscola. |
| IsBetween(Char, Char, Char) |
Indica se un carattere è compreso nell'intervallo inclusivo specificato. |
| IsControl(Char) |
Indica se il carattere Unicode specificato è categorizzato come carattere di controllo. |
| IsControl(String, Int32) |
Indica se il carattere in corrispondenza della posizione specificata in una stringa specificata è categorizzato come carattere di controllo. |
| IsDigit(Char) |
Indica se il carattere Unicode specificato è classificato come cifra decimale. |
| IsDigit(String, Int32) |
Indica se il carattere in corrispondenza della posizione specificata in una stringa specificata è categorizzato come cifra decimale. |
| IsHighSurrogate(Char) |
Indica se l'oggetto specificato Char è un surrogato elevato. |
| IsHighSurrogate(String, Int32) |
Indica se l'oggetto Char in corrispondenza della posizione specificata in una stringa è un surrogato elevato. |
| IsLetter(Char) |
Indica se il carattere Unicode specificato è classificato come lettera Unicode. |
| IsLetter(String, Int32) |
Indica se il carattere in corrispondenza della posizione specificata in una stringa specificata è categorizzato come lettera Unicode. |
| IsLetterOrDigit(Char) |
Indica se il carattere Unicode specificato è categorizzato come lettera o cifra decimale. |
| IsLetterOrDigit(String, Int32) |
Indica se il carattere in corrispondenza della posizione specificata in una stringa specificata è categorizzato come lettera o cifra decimale. |
| IsLower(Char) |
Indica se il carattere Unicode specificato è categorizzato come lettera minuscola. |
| IsLower(String, Int32) |
Indica se il carattere in corrispondenza della posizione specificata in una stringa specificata è categorizzato come lettera minuscola. |
| IsLowSurrogate(Char) |
Indica se l'oggetto specificato Char è un surrogato basso. |
| IsLowSurrogate(String, Int32) |
Indica se l'oggetto Char in corrispondenza della posizione specificata in una stringa è un surrogato basso. |
| IsNumber(Char) |
Indica se il carattere Unicode specificato è categorizzato come numero. |
| IsNumber(String, Int32) |
Indica se il carattere in corrispondenza della posizione specificata in una stringa specificata è categorizzato come numero. |
| IsPunctuation(Char) |
Indica se il carattere Unicode specificato è categorizzato come segno di punteggiatura. |
| IsPunctuation(String, Int32) |
Indica se il carattere in corrispondenza della posizione specificata in una stringa specificata è categorizzato come segno di punteggiatura. |
| IsSeparator(Char) |
Indica se il carattere Unicode specificato è categorizzato come carattere separatore. |
| IsSeparator(String, Int32) |
Indica se il carattere in corrispondenza della posizione specificata in una stringa specificata è categorizzato come carattere separatore. |
| IsSurrogate(Char) |
Indica se il carattere specificato ha un'unità di codice surrogato. |
| IsSurrogate(String, Int32) |
Indica se il carattere in corrispondenza della posizione specificata in una stringa specificata ha un'unità di codice surrogato. |
| IsSurrogatePair(Char, Char) |
Indica se i due oggetti specificati Char formano una coppia di surrogati. |
| IsSurrogatePair(String, Int32) |
Indica se due oggetti adiacenti Char in una posizione specificata in una stringa formano una coppia di surrogati. |
| IsSymbol(Char) |
Indica se il carattere Unicode specificato è categorizzato come carattere simbolo. |
| IsSymbol(String, Int32) |
Indica se il carattere in corrispondenza della posizione specificata in una stringa specificata è categorizzato come carattere simbolo. |
| IsUpper(Char) |
Indica se il carattere Unicode specificato è categorizzato come lettera maiuscola. |
| IsUpper(String, Int32) |
Indica se il carattere in corrispondenza della posizione specificata in una stringa specificata è categorizzato come lettera maiuscola. |
| IsWhiteSpace(Char) |
Indica se il carattere Unicode specificato è categorizzato come spazio vuoto. |
| IsWhiteSpace(String, Int32) |
Indica se il carattere in corrispondenza della posizione specificata in una stringa specificata è categorizzato come spazio vuoto. |
| Parse(String) |
Converte il valore della stringa specificata nel carattere Unicode equivalente. |
| ToLower(Char, CultureInfo) |
Converte il valore di un carattere Unicode specificato nell'equivalente minuscolo usando le informazioni di formattazione specifiche delle impostazioni cultura specificate. |
| ToLower(Char) |
Converte il valore di un carattere Unicode nell'equivalente minuscolo. |
| ToLowerInvariant(Char) |
Converte il valore di un carattere Unicode nell'equivalente minuscolo usando le regole di maiuscole e minuscole delle impostazioni cultura invarianti. |
| ToString() |
Converte il valore di questa istanza nella rappresentazione di stringa equivalente. |
| ToString(Char) |
Converte il carattere Unicode specificato nella rappresentazione di stringa equivalente. |
| ToString(IFormatProvider) |
Converte il valore di questa istanza nella rappresentazione di stringa equivalente usando le informazioni sul formato specifiche delle impostazioni cultura specificate. |
| ToUpper(Char, CultureInfo) |
Converte il valore di un carattere Unicode specificato nell'equivalente maiuscolo usando le informazioni di formattazione specifiche delle impostazioni cultura specificate. |
| ToUpper(Char) |
Converte il valore di un carattere Unicode nell'equivalente maiuscolo. |
| ToUpperInvariant(Char) |
Converte il valore di un carattere Unicode nell'equivalente maiuscolo usando le regole di maiuscole e minuscole delle impostazioni cultura invarianti. |
| TryParse(String, Char) |
Converte il valore della stringa specificata nel carattere Unicode equivalente. Un codice restituito indica se la conversione ha avuto esito positivo o negativo. |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| IAdditionOperators<Char,Char,Char>.Addition(Char, Char) |
Aggiunge due valori insieme per calcolare la somma. |
| IAdditionOperators<Char,Char,Char>.CheckedAddition(Char, Char) |
Aggiunge due valori insieme per calcolare la somma. |
| IAdditiveIdentity<Char,Char>.AdditiveIdentity |
Ottiene l'identità aggiuntiva del tipo corrente. |
| IBinaryInteger<Char>.GetByteCount() |
Ottiene il numero di byte che verranno scritti come parte di TryWriteLittleEndian(Span<Byte>, Int32). |
| IBinaryInteger<Char>.GetShortestBitLength() |
Ottiene la lunghezza, espressa in bit, della rappresentazione complementare più breve del valore corrente. |
| IBinaryInteger<Char>.LeadingZeroCount(Char) |
Calcola il numero di bit zero iniziali in un valore. |
| IBinaryInteger<Char>.Log10(Char) |
Rappresenta un carattere come unità di codice UTF-16. |
| IBinaryInteger<Char>.PopCount(Char) |
Calcola il numero di bit impostati in un valore. |
| IBinaryInteger<Char>.RotateLeft(Char, Int32) |
Ruota un valore a sinistra di una determinata quantità. |
| IBinaryInteger<Char>.RotateRight(Char, Int32) |
Ruota un valore a destra di una determinata quantità. |
| IBinaryInteger<Char>.TrailingZeroCount(Char) |
Calcola il numero di bit zero finali in un valore. |
| IBinaryInteger<Char>.TryReadBigEndian(ReadOnlySpan<Byte>, Boolean, Char) |
Rappresenta un carattere come unità di codice UTF-16. |
| IBinaryInteger<Char>.TryReadLittleEndian(ReadOnlySpan<Byte>, Boolean, Char) |
Rappresenta un carattere come unità di codice UTF-16. |
| IBinaryInteger<Char>.TryWriteBigEndian(Span<Byte>, Int32) |
Prova a scrivere il valore corrente, in formato big-endian, in un intervallo specificato. |
| IBinaryInteger<Char>.TryWriteLittleEndian(Span<Byte>, Int32) |
Prova a scrivere il valore corrente, in formato little-endian, in un intervallo specificato. |
| IBinaryNumber<Char>.AllBitsSet |
Ottiene un'istanza del tipo binario in cui vengono impostati tutti i bit. |
| IBinaryNumber<Char>.IsPow2(Char) |
Determina se un valore è una potenza di due. |
| IBinaryNumber<Char>.Log2(Char) |
Calcola il log2 di un valore. |
| IBitwiseOperators<Char,Char,Char>.BitwiseAnd(Char, Char) |
Calcola i valori bit per bit e di due valori. |
| IBitwiseOperators<Char,Char,Char>.BitwiseOr(Char, Char) |
Calcola i valori bit per bit o di due valori. |
| IBitwiseOperators<Char,Char,Char>.ExclusiveOr(Char, Char) |
Calcola il valore esclusivo o di due valori. |
| IBitwiseOperators<Char,Char,Char>.OnesComplement(Char) |
Calcola la rappresentazione di complemento di un determinato valore. |
| IComparable.CompareTo(Object) |
Confronta l'istanza corrente con un altro oggetto dello stesso tipo e restituisce un numero intero che indica se l'istanza corrente precede, segue o si trova nella stessa posizione nell'ordinamento dell'altro oggetto. |
| IComparisonOperators<Char,Char,Boolean>.GreaterThan(Char, Char) |
Confronta due valori per determinare quale è maggiore. |
| IComparisonOperators<Char,Char,Boolean>.GreaterThanOrEqual(Char, Char) |
Confronta due valori per determinare quale è maggiore o uguale. |
| IComparisonOperators<Char,Char,Boolean>.LessThan(Char, Char) |
Confronta due valori per determinare quale è minore. |
| IComparisonOperators<Char,Char,Boolean>.LessThanOrEqual(Char, Char) |
Confronta due valori per determinare quale è minore o uguale. |
| IConvertible.GetTypeCode() |
Restituisce l'oggetto TypeCode per questa istanza. |
| IConvertible.ToBoolean(IFormatProvider) |
Nota Questa conversione non è supportata. Se si tenta di farlo, viene generata una InvalidCastException. |
| IConvertible.ToByte(IFormatProvider) |
Per una descrizione di questo membro, vedere ToByte(IFormatProvider). |
| IConvertible.ToChar(IFormatProvider) |
Per una descrizione di questo membro, vedere ToChar(IFormatProvider). |
| IConvertible.ToDateTime(IFormatProvider) |
Nota Questa conversione non è supportata. Se si tenta di farlo, viene generata una InvalidCastException. |
| IConvertible.ToDecimal(IFormatProvider) |
Nota Questa conversione non è supportata. Se si tenta di farlo, viene generata una InvalidCastException. |
| IConvertible.ToDouble(IFormatProvider) |
Nota Questa conversione non è supportata. Se si tenta di farlo, viene generata una InvalidCastException. |
| IConvertible.ToInt16(IFormatProvider) |
Per una descrizione di questo membro, vedere ToInt16(IFormatProvider). |
| IConvertible.ToInt32(IFormatProvider) |
Per una descrizione di questo membro, vedere ToInt32(IFormatProvider). |
| IConvertible.ToInt64(IFormatProvider) |
Per una descrizione di questo membro, vedere ToInt64(IFormatProvider). |
| IConvertible.ToSByte(IFormatProvider) |
Per una descrizione di questo membro, vedere ToSByte(IFormatProvider). |
| IConvertible.ToSingle(IFormatProvider) |
Nota Questa conversione non è supportata. Se si tenta di farlo, viene generata una InvalidCastException. |
| IConvertible.ToString(IFormatProvider) |
Converte il valore di questa istanza in una stringa equivalente, utilizzando le informazioni di formattazione specifiche delle impostazioni cultura specificate. |
| IConvertible.ToType(Type, IFormatProvider) |
Per una descrizione di questo membro, vedere ToType(Type, IFormatProvider). |
| IConvertible.ToUInt16(IFormatProvider) |
Per una descrizione di questo membro, vedere ToUInt16(IFormatProvider). |
| IConvertible.ToUInt32(IFormatProvider) |
Per una descrizione di questo membro, vedere ToUInt32(IFormatProvider). |
| IConvertible.ToUInt64(IFormatProvider) |
Per una descrizione di questo membro, vedere ToUInt64(IFormatProvider). |
| IDecrementOperators<Char>.CheckedDecrement(Char) |
Decrementa un valore. |
| IDecrementOperators<Char>.Decrement(Char) |
Decrementa un valore. |
| IDivisionOperators<Char,Char,Char>.Division(Char, Char) |
Divide un valore per un altro per calcolare il quoziente. |
| IEqualityOperators<Char,Char,Boolean>.Equality(Char, Char) |
Confronta due valori per determinare l'uguaglianza. |
| IEqualityOperators<Char,Char,Boolean>.Inequality(Char, Char) |
Confronta due valori per determinare la disuguaglianza. |
| IFormattable.ToString(String, IFormatProvider) |
Formatta il valore dell'istanza corrente utilizzando il formato specificato. |
| IIncrementOperators<Char>.CheckedIncrement(Char) |
Incrementa un valore. |
| IIncrementOperators<Char>.Increment(Char) |
Incrementa un valore. |
| IMinMaxValue<Char>.MaxValue |
Ottiene il valore massimo del tipo corrente. |
| IMinMaxValue<Char>.MinValue |
Ottiene il valore minimo del tipo corrente. |
| IModulusOperators<Char,Char,Char>.Modulus(Char, Char) |
Divide due valori insieme per calcolare il modulo o il resto. |
| IMultiplicativeIdentity<Char,Char>.MultiplicativeIdentity |
Ottiene l'identità moltiplicativa del tipo corrente. |
| IMultiplyOperators<Char,Char,Char>.CheckedMultiply(Char, Char) |
Moltiplica due valori insieme per calcolare il prodotto. |
| IMultiplyOperators<Char,Char,Char>.Multiply(Char, Char) |
Moltiplica due valori insieme per calcolare il prodotto. |
| INumberBase<Char>.Abs(Char) |
Calcola l'assoluto di un valore. |
| INumberBase<Char>.IsCanonical(Char) |
Determina se un valore è nella relativa rappresentazione canonica. |
| INumberBase<Char>.IsComplexNumber(Char) |
Determina se un valore rappresenta un numero complesso. |
| INumberBase<Char>.IsEvenInteger(Char) |
Determina se un valore rappresenta un numero integrale pari. |
| INumberBase<Char>.IsFinite(Char) |
Determina se un valore è finito. |
| INumberBase<Char>.IsImaginaryNumber(Char) |
Determina se un valore rappresenta un numero immaginario puro. |
| INumberBase<Char>.IsInfinity(Char) |
Determina se un valore è infinito. |
| INumberBase<Char>.IsInteger(Char) |
Determina se un valore rappresenta un numero integrale. |
| INumberBase<Char>.IsNaN(Char) |
Determina se un valore è NaN. |
| INumberBase<Char>.IsNegative(Char) |
Determina se un valore è negativo. |
| INumberBase<Char>.IsNegativeInfinity(Char) |
Determina se un valore è infinito negativo. |
| INumberBase<Char>.IsNormal(Char) |
Determina se un valore è normale. |
| INumberBase<Char>.IsOddInteger(Char) |
Determina se un valore rappresenta un numero integrale dispari. |
| INumberBase<Char>.IsPositive(Char) |
Determina se un valore è positivo. |
| INumberBase<Char>.IsPositiveInfinity(Char) |
Determina se un valore è infinito positivo. |
| INumberBase<Char>.IsRealNumber(Char) |
Determina se un valore rappresenta un numero reale. |
| INumberBase<Char>.IsSubnormal(Char) |
Determina se un valore è sottonormamale. |
| INumberBase<Char>.IsZero(Char) |
Determina se un valore è zero. |
| INumberBase<Char>.MaxMagnitude(Char, Char) |
Confronta due valori con il calcolo maggiore. |
| INumberBase<Char>.MaxMagnitudeNumber(Char, Char) |
Confronta due valori con il calcolo con la grandezza maggiore e restituendo l'altro valore se un input è |
| INumberBase<Char>.MinMagnitude(Char, Char) |
Confronta due valori con il calcolo minore. |
| INumberBase<Char>.MinMagnitudeNumber(Char, Char) |
Confronta due valori con il calcolo con la grandezza minore e restituendo l'altro valore se un input è |
| INumberBase<Char>.MultiplyAddEstimate(Char, Char, Char) |
Calcola una stima di ( |
| INumberBase<Char>.One |
Ottiene il valore |
| INumberBase<Char>.Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider) |
Analizza un intervallo di caratteri in un valore. |
| INumberBase<Char>.Parse(String, NumberStyles, IFormatProvider) |
Analizza una stringa in un valore. |
| INumberBase<Char>.Radix |
Ottiene la radice o la base del tipo. |
| INumberBase<Char>.TryConvertFromChecked<TOther>(TOther, Char) |
Rappresenta un carattere come unità di codice UTF-16. |
| INumberBase<Char>.TryConvertFromSaturating<TOther>(TOther, Char) |
Rappresenta un carattere come unità di codice UTF-16. |
| INumberBase<Char>.TryConvertFromTruncating<TOther>(TOther, Char) |
Rappresenta un carattere come unità di codice UTF-16. |
| INumberBase<Char>.TryConvertToChecked<TOther>(Char, TOther) |
Tenta di convertire un'istanza del tipo corrente in un altro tipo, generando un'eccezione di overflow per tutti i valori che non rientrano nell'intervallo rappresentabile del tipo corrente. |
| INumberBase<Char>.TryConvertToSaturating<TOther>(Char, TOther) |
Tenta di convertire un'istanza del tipo corrente in un altro tipo, saturando tutti i valori che non rientrano nell'intervallo rappresentabile del tipo corrente. |
| INumberBase<Char>.TryConvertToTruncating<TOther>(Char, TOther) |
Tenta di convertire un'istanza del tipo corrente in un altro tipo, troncando tutti i valori che non rientrano nell'intervallo rappresentabile del tipo corrente. |
| INumberBase<Char>.TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Char) |
Rappresenta un carattere come unità di codice UTF-16. |
| INumberBase<Char>.TryParse(String, NumberStyles, IFormatProvider, Char) |
Rappresenta un carattere come unità di codice UTF-16. |
| INumberBase<Char>.Zero |
Ottiene il valore |
| IParsable<Char>.Parse(String, IFormatProvider) |
Analizza una stringa in un valore. |
| IParsable<Char>.TryParse(String, IFormatProvider, Char) |
Rappresenta un carattere come unità di codice UTF-16. |
| IShiftOperators<Char,Int32,Char>.LeftShift(Char, Int32) |
Sposta un valore a sinistra di una determinata quantità. |
| IShiftOperators<Char,Int32,Char>.RightShift(Char, Int32) |
Sposta un valore a destra di una determinata quantità. |
| IShiftOperators<Char,Int32,Char>.UnsignedRightShift(Char, Int32) |
Sposta un valore a destra di una determinata quantità. |
| ISpanFormattable.TryFormat(Span<Char>, Int32, ReadOnlySpan<Char>, IFormatProvider) |
Tenta di formattare il valore dell'istanza corrente nell'intervallo di caratteri specificato. |
| ISpanParsable<Char>.Parse(ReadOnlySpan<Char>, IFormatProvider) |
Analizza un intervallo di caratteri in un valore. |
| ISpanParsable<Char>.TryParse(ReadOnlySpan<Char>, IFormatProvider, Char) |
Rappresenta un carattere come unità di codice UTF-16. |
| ISubtractionOperators<Char,Char,Char>.CheckedSubtraction(Char, Char) |
Sottrae due valori per calcolare la differenza. |
| ISubtractionOperators<Char,Char,Char>.Subtraction(Char, Char) |
Sottrae due valori per calcolare la differenza. |
| IUnaryNegationOperators<Char,Char>.CheckedUnaryNegation(Char) |
Calcola la negazione unaria controllata di un valore. |
| IUnaryNegationOperators<Char,Char>.UnaryNegation(Char) |
Calcola la negazione unaria di un valore. |
| IUnaryPlusOperators<Char,Char>.UnaryPlus(Char) |
Calcola il plus unario di un valore. |
| IUtf8SpanFormattable.TryFormat(Span<Byte>, Int32, ReadOnlySpan<Char>, IFormatProvider) |
Prova a formattare il valore dell'istanza corrente come UTF-8 nell'intervallo di byte specificato. |
| IUtf8SpanParsable<Char>.Parse(ReadOnlySpan<Byte>, IFormatProvider) |
Rappresenta un carattere come unità di codice UTF-16. |
| IUtf8SpanParsable<Char>.TryParse(ReadOnlySpan<Byte>, IFormatProvider, Char) |
Rappresenta un carattere come unità di codice UTF-16. |
Si applica a
Thread safety
Tutti i membri di questo tipo sono thread-safe. I membri che sembrano modificare lo stato dell'istanza restituiscono effettivamente una nuova istanza inizializzata con il nuovo valore. Come per qualsiasi altro tipo, la lettura e la scrittura in una variabile condivisa contenente un'istanza di questo tipo devono essere protette da un blocco per garantire la thread safety.