Char Estructura
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Representa un carácter como una unidad de código 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)
- Herencia
- Atributos
- Implementaciones
-
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>
Ejemplos
En el ejemplo de código siguiente se muestran algunos de los métodos de 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
Comentarios
La Char estructura representa puntos de código Unicode mediante codificación UTF-16. El valor de un Char objeto es su valor numérico de 16 bits (ordinal).
Si no está familiarizado con Unicode, valores escalares, puntos de código, pares suplentes, UTF-16 y el tipo, vea Rune.
En este artículo se examina la relación entre un Char objeto y un carácter y se describen algunas tareas comunes realizadas con Char instancias. Recomendamos considerar el tipo Rune, introducido en .NET Core 3.0, como alternativa a Char para realizar algunas de estas tareas.
Objetos Char, caracteres Unicode y cadenas
Un String objeto es una colección secuencial de Char estructuras que representa una cadena de texto. La mayoría de los caracteres Unicode se pueden representar mediante un único Char objeto, pero un carácter codificado como carácter base, par suplente o secuencia de caracteres combinado se representa mediante varios Char objetos. Por este motivo, una Char estructura de un String objeto no es necesariamente equivalente a un único carácter Unicode.
Se usan varias unidades de código de 16 bits para representar caracteres Unicode únicos en los casos siguientes:
Glifos, que pueden constar de un solo carácter o de un carácter base seguidos de uno o varios caracteres combinados. Por ejemplo, el carácter ä se representa mediante un Char objeto cuya unidad de código es U+0061 seguida de un Char objeto cuya unidad de código es U+0308. (El carácter ä también se puede definir mediante un único Char objeto que tiene una unidad de código de U+00E4). En el ejemplo siguiente se muestra que el carácter ä consta de dos Char objetos.
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: ' äCaracteres fuera del Plano Multilingüe Básico (BMP) de Unicode. Unicode admite dieciséis planos además del BMP, que representa el plano 0. Un punto de código Unicode se representa en UTF-32 por un valor de 21 bits que incluye el plano. Por ejemplo, U+1D160 representa el carácter MUSICAL SYMBOL EIGHTH NOTE. Dado que la codificación UTF-16 solo tiene 16 bits, los caracteres fuera del BMP se representan mediante pares suplentes en UTF-16. En el ejemplo siguiente se muestra que el equivalente UTF-32 de U+1D160, el carácter MUSICAL SYMBOL EIGHTH NOTE, es U+D834 U+DD60. U+D834 es el suplente alto; los suplentes altos oscilan entre U+D800 y U+DBFF. U+DD60 es el suplente bajo; Los suplentes bajos oscilan entre U+DC00 y 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
Caracteres y categorías de caracteres
Cada carácter Unicode o un par suplente válido pertenece a una categoría Unicode. En .NET, las categorías Unicode se representan mediante miembros de la UnicodeCategory enumeración e incluyen valores como UnicodeCategory.CurrencySymbol, UnicodeCategory.LowercaseLettery UnicodeCategory.SpaceSeparator, por ejemplo.
Para determinar la categoría Unicode de un carácter, llame al GetUnicodeCategory método . Por ejemplo, en el ejemplo siguiente se llama GetUnicodeCategory a para mostrar la categoría Unicode de cada carácter de una cadena. El ejemplo solo funciona correctamente si no hay ningún par suplente en la String instancia.
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, para caracteres fuera del intervalo ASCII (U+0000 a U+00FF), el GetUnicodeCategory método depende de las categorías Unicode notificadas por la CharUnicodeInfo clase. Los caracteres Unicode se clasifican en función del estándar Unicode, versión 8.0.0.
Caracteres y elementos de texto
Dado que un solo carácter puede ser representado por múltiples objetos Char, no siempre es significativo trabajar con objetos individuales Char. Por ejemplo, en el ejemplo siguiente se convierten los puntos de código Unicode que representan los números Egeo cero a 9 a unidades de código codificadas UTF-16. Dado que equivale erróneamente Char a objetos con caracteres, informa inexactamente de que la cadena resultante tiene 20 caracteres.
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.
Puede hacer lo siguiente para evitar la suposición de que un Char objeto representa un solo carácter:
Puede trabajar con un String objeto en su totalidad en lugar de trabajar con sus caracteres individuales para representar y analizar contenido lingüístico.
Puede usar String.EnumerateRunes como se muestra en el ejemplo siguiente:
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 letterCountPuede usar la StringInfo clase para trabajar con elementos de texto en lugar de objetos individuales Char . En el ejemplo siguiente se usa el StringInfo objeto para contar el número de elementos de texto de una cadena que consta de los números Egeo cero a nueve. Dado que considera un par suplente un solo carácter, notifica correctamente que la cadena contiene diez caracteres.
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.Si una cadena contiene un carácter base que tiene uno o varios caracteres combinados, puede llamar al String.Normalize método para convertir la subcadena en una sola unidad de código codificada UTF-16. En el ejemplo siguiente se llama al método String.Normalize para convertir el carácter base U+0061 (letra minúscula latina A) y el carácter combinante U+0308 (diéresis combinante) a U+00E4 (letra minúscula latina A con diéresis).
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)
Operaciones comunes
La Char estructura proporciona métodos para comparar Char objetos, convertir el valor del objeto actual Char en un objeto de otro tipo y determinar la categoría Unicode de un Char objeto:
| Para hacer esto | Use estos System.Char métodos |
|---|---|
| Comparar objetos Char | CompareTo y Equals |
| Convertir un punto de código en una cadena | ConvertFromUtf32 Vea también el Rune tipo . |
| Convertir un Char objeto o un par de objetos Char suplentes en un punto de código | Para un solo carácter: Convert.ToInt32(Char) Para un par suplente o un carácter en una cadena: Char.ConvertToUtf32 Vea también el Rune tipo . |
| Obtener la categoría Unicode de un carácter | GetUnicodeCategory Consulte también Rune.GetUnicodeCategory. |
| Determinar si un carácter está en una categoría Unicode determinada, como dígito, letra, puntuación, carácter de control, etc. |
IsControl, IsDigit, IsHighSurrogate, IsLetter, IsLetterOrDigit, IsLower, IsLowSurrogate, IsNumber, IsPunctuation, IsSeparator, IsSurrogate, IsSurrogatePair, IsSymbol, IsUpper, y IsWhiteSpace Consulte también los métodos correspondientes en el tipo Rune. |
| Convertir un Char objeto que representa un número en un tipo de valor numérico | GetNumericValue Consulte también Rune.GetNumericValue. |
| Convertir un carácter en una cadena en un Char objeto | Parse y TryParse |
| Convertir un Char objeto en un String objeto | ToString |
| Cambiar el caso de un objeto Char |
ToLower, ToLowerInvariant, ToUpper y ToUpperInvariant. Consulte también los métodos correspondientes en el tipo Rune. |
Valores de caracteres e interoperabilidad
Cuando un tipo administrado Char, que se representa como una unidad de código codificada en UTF-16 Unicode, se pasa a código no administrado, el mariscal de interoperabilidad convierte el conjunto de caracteres a ANSI por defecto. Puede aplicar el atributo DllImportAttribute a las declaraciones de invocación de plataforma y el atributo StructLayoutAttribute a una declaración de interoperabilidad COM para controlar qué conjunto de caracteres utiliza un tipo de Char marshallado.
Campos
| Nombre | Description |
|---|---|
| MaxValue |
Representa el valor más grande posible de .Char Este campo es constante. |
| MinValue |
Representa el valor más pequeño posible de .Char Este campo es constante. |
Métodos
| Nombre | Description |
|---|---|
| CompareTo(Char) |
Compara esta instancia con un objeto especificado Char e indica si esta instancia precede, sigue o aparece en la misma posición en el criterio de ordenación que el objeto especificado Char . |
| CompareTo(Object) |
Compara esta instancia con un objeto especificado e indica si esta instancia precede, sigue o aparece en la misma posición en el criterio de ordenación que el especificado Object. |
| ConvertFromUtf32(Int32) |
Convierte el punto de código Unicode especificado en una cadena codificada UTF-16. |
| ConvertToUtf32(Char, Char) |
Convierte el valor de un par suplente codificado UTF-16 en un punto de código Unicode. |
| ConvertToUtf32(String, Int32) |
Convierte el valor de un par suplente o carácter codificado UTF-16 en una posición especificada de una cadena en un punto de código Unicode. |
| Equals(Char, StringComparison) |
Representa un carácter como una unidad de código UTF-16. |
| Equals(Char) |
Devuelve un valor que indica si esta instancia es igual al objeto especificado Char . |
| Equals(Object) |
Devuelve un valor que indica si esta instancia es igual a un objeto especificado. |
| GetHashCode() |
Devuelve el código hash de esta instancia. |
| GetNumericValue(Char) |
Convierte el carácter Unicode numérico especificado en un número de punto flotante de precisión doble. |
| GetNumericValue(String, Int32) |
Convierte el carácter Unicode numérico en la posición especificada de una cadena especificada en un número de punto flotante de precisión doble. |
| GetTypeCode() | |
| GetUnicodeCategory(Char) |
Clasifica un carácter Unicode especificado en un grupo identificado por uno de los UnicodeCategory valores. |
| GetUnicodeCategory(String, Int32) |
Clasifica el carácter en la posición especificada de una cadena especificada en un grupo identificado por uno de los UnicodeCategory valores. |
| IsAscii(Char) |
Devuelve |
| IsAsciiDigit(Char) |
Indica si un carácter se clasifica como un dígito ASCII. |
| IsAsciiHexDigit(Char) |
Indica si un carácter se clasifica como un dígito hexadecimal ASCII. |
| IsAsciiHexDigitLower(Char) |
Indica si un carácter se clasifica como un dígito hexadecimal ASCII en minúsculas. |
| IsAsciiHexDigitUpper(Char) |
Indica si un carácter se clasifica como un dígito hexadecimal de mayúsculas y minúsculas ASCII. |
| IsAsciiLetter(Char) |
Indica si un carácter se clasifica como una letra ASCII. |
| IsAsciiLetterLower(Char) |
Indica si un carácter se clasifica como una letra ASCII minúscula. |
| IsAsciiLetterOrDigit(Char) |
Indica si un carácter se clasifica como una letra ASCII o un dígito. |
| IsAsciiLetterUpper(Char) |
Indica si un carácter se clasifica como una letra ASCII mayúscula. |
| IsBetween(Char, Char, Char) |
Indica si un carácter está dentro del intervalo inclusivo especificado. |
| IsControl(Char) |
Indica si el carácter Unicode especificado se clasifica como un carácter de control. |
| IsControl(String, Int32) |
Indica si el carácter situado en la posición especificada de una cadena especificada se clasifica como un carácter de control. |
| IsDigit(Char) |
Indica si el carácter Unicode especificado se clasifica como un dígito decimal. |
| IsDigit(String, Int32) |
Indica si el carácter situado en la posición especificada de una cadena especificada se clasifica como un dígito decimal. |
| IsHighSurrogate(Char) |
Indica si el objeto especificado Char es un suplente alto. |
| IsHighSurrogate(String, Int32) |
Indica si el Char objeto situado en la posición especificada de una cadena es un suplente alto. |
| IsLetter(Char) |
Indica si el carácter Unicode especificado se clasifica como una letra Unicode. |
| IsLetter(String, Int32) |
Indica si el carácter situado en la posición especificada de una cadena especificada se clasifica como una letra Unicode. |
| IsLetterOrDigit(Char) |
Indica si el carácter Unicode especificado se clasifica como una letra o un dígito decimal. |
| IsLetterOrDigit(String, Int32) |
Indica si el carácter situado en la posición especificada de una cadena especificada se clasifica como una letra o un dígito decimal. |
| IsLower(Char) |
Indica si el carácter Unicode especificado se clasifica como una letra minúscula. |
| IsLower(String, Int32) |
Indica si el carácter situado en la posición especificada de una cadena especificada se clasifica como una letra minúscula. |
| IsLowSurrogate(Char) |
Indica si el objeto especificado Char es un suplente bajo. |
| IsLowSurrogate(String, Int32) |
Indica si el Char objeto situado en la posición especificada de una cadena es un suplente bajo. |
| IsNumber(Char) |
Indica si el carácter Unicode especificado se clasifica como un número. |
| IsNumber(String, Int32) |
Indica si el carácter situado en la posición especificada de una cadena especificada se clasifica como un número. |
| IsPunctuation(Char) |
Indica si el carácter Unicode especificado se clasifica como una marca de puntuación. |
| IsPunctuation(String, Int32) |
Indica si el carácter situado en la posición especificada de una cadena especificada se clasifica como signo de puntuación. |
| IsSeparator(Char) |
Indica si el carácter Unicode especificado se clasifica como carácter separador. |
| IsSeparator(String, Int32) |
Indica si el carácter situado en la posición especificada de una cadena especificada se clasifica como carácter separador. |
| IsSurrogate(Char) |
Indica si el carácter especificado tiene una unidad de código suplente. |
| IsSurrogate(String, Int32) |
Indica si el carácter situado en la posición especificada de una cadena especificada tiene una unidad de código suplente. |
| IsSurrogatePair(Char, Char) |
Indica si los dos objetos especificados Char forman un par suplente. |
| IsSurrogatePair(String, Int32) |
Indica si dos objetos adyacentes Char en una posición especificada en una cadena forman un par suplente. |
| IsSymbol(Char) |
Indica si el carácter Unicode especificado se clasifica como un carácter de símbolo. |
| IsSymbol(String, Int32) |
Indica si el carácter situado en la posición especificada de una cadena especificada se clasifica como un carácter de símbolo. |
| IsUpper(Char) |
Indica si el carácter Unicode especificado se clasifica como una letra mayúscula. |
| IsUpper(String, Int32) |
Indica si el carácter situado en la posición especificada de una cadena especificada se clasifica como una letra mayúscula. |
| IsWhiteSpace(Char) |
Indica si el carácter Unicode especificado se clasifica como espacio en blanco. |
| IsWhiteSpace(String, Int32) |
Indica si el carácter situado en la posición especificada de una cadena especificada se clasifica como espacio en blanco. |
| Parse(String) |
Convierte el valor de la cadena especificada en su carácter Unicode equivalente. |
| ToLower(Char, CultureInfo) |
Convierte el valor de un carácter Unicode especificado en su equivalente en minúsculas mediante la información de formato específica de la referencia cultural especificada. |
| ToLower(Char) |
Convierte el valor de un carácter Unicode en su equivalente en minúsculas. |
| ToLowerInvariant(Char) |
Convierte el valor de un carácter Unicode en su equivalente en minúsculas mediante las reglas de mayúsculas y minúsculas de la referencia cultural invariable. |
| ToString() |
Convierte el valor de esta instancia en su representación de cadena equivalente. |
| ToString(Char) |
Convierte el carácter Unicode especificado en su representación de cadena equivalente. |
| ToString(IFormatProvider) |
Convierte el valor de esta instancia en su representación de cadena equivalente mediante la información de formato específica de la referencia cultural especificada. |
| ToUpper(Char, CultureInfo) |
Convierte el valor de un carácter Unicode especificado en su equivalente en mayúsculas mediante la información de formato específica de la referencia cultural especificada. |
| ToUpper(Char) |
Convierte el valor de un carácter Unicode en su equivalente en mayúsculas. |
| ToUpperInvariant(Char) |
Convierte el valor de un carácter Unicode en su equivalente en mayúsculas mediante las reglas de mayúsculas de la referencia cultural invariable. |
| TryParse(String, Char) |
Convierte el valor de la cadena especificada en su carácter Unicode equivalente. Un código de retorno indica si la conversión se realizó correctamente o no. |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| IAdditionOperators<Char,Char,Char>.Addition(Char, Char) |
Agrega dos valores juntos para calcular su suma. |
| IAdditionOperators<Char,Char,Char>.CheckedAddition(Char, Char) |
Agrega dos valores juntos para calcular su suma. |
| IAdditiveIdentity<Char,Char>.AdditiveIdentity |
Obtiene la identidad de suma del tipo actual. |
| IBinaryInteger<Char>.GetByteCount() |
Obtiene el número de bytes que se escribirán como parte de TryWriteLittleEndian(Span<Byte>, Int32). |
| IBinaryInteger<Char>.GetShortestBitLength() |
Obtiene la longitud, en bits, de la representación complementaria de dos más corta del valor actual. |
| IBinaryInteger<Char>.LeadingZeroCount(Char) |
Calcula el número de bits cero iniciales en un valor. |
| IBinaryInteger<Char>.Log10(Char) |
Representa un carácter como una unidad de código UTF-16. |
| IBinaryInteger<Char>.PopCount(Char) |
Calcula el número de bits que se establecen en un valor. |
| IBinaryInteger<Char>.RotateLeft(Char, Int32) |
Gira un valor de izquierda por una cantidad determinada. |
| IBinaryInteger<Char>.RotateRight(Char, Int32) |
Gira un valor a la derecha por una cantidad determinada. |
| IBinaryInteger<Char>.TrailingZeroCount(Char) |
Calcula el número de bits finales cero en un valor. |
| IBinaryInteger<Char>.TryReadBigEndian(ReadOnlySpan<Byte>, Boolean, Char) |
Representa un carácter como una unidad de código UTF-16. |
| IBinaryInteger<Char>.TryReadLittleEndian(ReadOnlySpan<Byte>, Boolean, Char) |
Representa un carácter como una unidad de código UTF-16. |
| IBinaryInteger<Char>.TryWriteBigEndian(Span<Byte>, Int32) |
Intenta escribir el valor actual, en formato big-endian, en un intervalo determinado. |
| IBinaryInteger<Char>.TryWriteLittleEndian(Span<Byte>, Int32) |
Intenta escribir el valor actual, en formato little-endian, en un intervalo determinado. |
| IBinaryNumber<Char>.AllBitsSet |
Obtiene una instancia del tipo binario en el que se establecen todos los bits. |
| IBinaryNumber<Char>.IsPow2(Char) |
Determina si un valor es una potencia de dos. |
| IBinaryNumber<Char>.Log2(Char) |
Calcula el registro2 de un valor. |
| IBitwiseOperators<Char,Char,Char>.BitwiseAnd(Char, Char) |
Calcula los valores bit a bit y de dos valores. |
| IBitwiseOperators<Char,Char,Char>.BitwiseOr(Char, Char) |
Calcula el bit a bit o de dos valores. |
| IBitwiseOperators<Char,Char,Char>.ExclusiveOr(Char, Char) |
Calcula el valor exclusivo o de dos valores. |
| IBitwiseOperators<Char,Char,Char>.OnesComplement(Char) |
Calcula la representación ones-complement de un valor determinado. |
| IComparable.CompareTo(Object) |
Compara la instancia actual con otro objeto del mismo tipo y devuelve un entero que indica si la instancia actual precede, sigue o se produce en la misma posición en el criterio de ordenación que el otro objeto. |
| IComparisonOperators<Char,Char,Boolean>.GreaterThan(Char, Char) |
Compara dos valores para determinar cuál es mayor. |
| IComparisonOperators<Char,Char,Boolean>.GreaterThanOrEqual(Char, Char) |
Compara dos valores para determinar cuál es mayor o igual. |
| IComparisonOperators<Char,Char,Boolean>.LessThan(Char, Char) |
Compara dos valores para determinar cuál es menor. |
| IComparisonOperators<Char,Char,Boolean>.LessThanOrEqual(Char, Char) |
Compara dos valores para determinar cuál es menor o igual. |
| IConvertible.GetTypeCode() |
Devuelve para TypeCode esta instancia. |
| IConvertible.ToBoolean(IFormatProvider) |
Nota Esta conversión no se admite. Al intentar hacerlo, se lanza un InvalidCastException. |
| IConvertible.ToByte(IFormatProvider) |
Para obtener una descripción de este miembro, vea ToByte(IFormatProvider). |
| IConvertible.ToChar(IFormatProvider) |
Para obtener una descripción de este miembro, vea ToChar(IFormatProvider). |
| IConvertible.ToDateTime(IFormatProvider) |
Nota Esta conversión no se admite. Al intentar hacerlo, se lanza un InvalidCastException. |
| IConvertible.ToDecimal(IFormatProvider) |
Nota Esta conversión no se admite. Al intentar hacerlo, se lanza un InvalidCastException. |
| IConvertible.ToDouble(IFormatProvider) |
Nota Esta conversión no se admite. Al intentar hacerlo, se lanza un InvalidCastException. |
| IConvertible.ToInt16(IFormatProvider) |
Para obtener una descripción de este miembro, vea ToInt16(IFormatProvider). |
| IConvertible.ToInt32(IFormatProvider) |
Para obtener una descripción de este miembro, vea ToInt32(IFormatProvider). |
| IConvertible.ToInt64(IFormatProvider) |
Para obtener una descripción de este miembro, vea ToInt64(IFormatProvider). |
| IConvertible.ToSByte(IFormatProvider) |
Para obtener una descripción de este miembro, vea ToSByte(IFormatProvider). |
| IConvertible.ToSingle(IFormatProvider) |
Nota Esta conversión no se admite. Al intentar hacerlo, se lanza un InvalidCastException. |
| IConvertible.ToString(IFormatProvider) |
Convierte el valor de esta instancia en una cadena equivalente mediante la información de formato específica de la referencia cultural especificada. |
| IConvertible.ToType(Type, IFormatProvider) |
Para obtener una descripción de este miembro, vea ToType(Type, IFormatProvider). |
| IConvertible.ToUInt16(IFormatProvider) |
Para obtener una descripción de este miembro, vea ToUInt16(IFormatProvider). |
| IConvertible.ToUInt32(IFormatProvider) |
Para obtener una descripción de este miembro, vea ToUInt32(IFormatProvider). |
| IConvertible.ToUInt64(IFormatProvider) |
Para obtener una descripción de este miembro, vea ToUInt64(IFormatProvider). |
| IDecrementOperators<Char>.CheckedDecrement(Char) |
Disminuye un valor. |
| IDecrementOperators<Char>.Decrement(Char) |
Disminuye un valor. |
| IDivisionOperators<Char,Char,Char>.Division(Char, Char) |
Divide un valor por otro para calcular su cociente. |
| IEqualityOperators<Char,Char,Boolean>.Equality(Char, Char) |
Compara dos valores para determinar la igualdad. |
| IEqualityOperators<Char,Char,Boolean>.Inequality(Char, Char) |
Compara dos valores para determinar la desigualdad. |
| IFormattable.ToString(String, IFormatProvider) |
Da formato al valor de la instancia actual mediante el formato especificado. |
| IIncrementOperators<Char>.CheckedIncrement(Char) |
Incrementa un valor. |
| IIncrementOperators<Char>.Increment(Char) |
Incrementa un valor. |
| IMinMaxValue<Char>.MaxValue |
Obtiene el valor máximo del tipo actual. |
| IMinMaxValue<Char>.MinValue |
Obtiene el valor mínimo del tipo actual. |
| IModulusOperators<Char,Char,Char>.Modulus(Char, Char) |
Divide dos valores juntos para calcular su módulo o resto. |
| IMultiplicativeIdentity<Char,Char>.MultiplicativeIdentity |
Obtiene la identidad multiplicativa del tipo actual. |
| IMultiplyOperators<Char,Char,Char>.CheckedMultiply(Char, Char) |
Multiplica dos valores juntos para calcular su producto. |
| IMultiplyOperators<Char,Char,Char>.Multiply(Char, Char) |
Multiplica dos valores juntos para calcular su producto. |
| INumberBase<Char>.Abs(Char) |
Calcula el valor absoluto de un valor. |
| INumberBase<Char>.IsCanonical(Char) |
Determina si un valor está en su representación canónica. |
| INumberBase<Char>.IsComplexNumber(Char) |
Determina si un valor representa un número complejo. |
| INumberBase<Char>.IsEvenInteger(Char) |
Determina si un valor representa un número entero par. |
| INumberBase<Char>.IsFinite(Char) |
Determina si un valor es finito. |
| INumberBase<Char>.IsImaginaryNumber(Char) |
Determina si un valor representa un número imaginario puro. |
| INumberBase<Char>.IsInfinity(Char) |
Determina si un valor es infinito. |
| INumberBase<Char>.IsInteger(Char) |
Determina si un valor representa un número entero. |
| INumberBase<Char>.IsNaN(Char) |
Determina si un valor es NaN. |
| INumberBase<Char>.IsNegative(Char) |
Determina si un valor es negativo. |
| INumberBase<Char>.IsNegativeInfinity(Char) |
Determina si un valor es infinito negativo. |
| INumberBase<Char>.IsNormal(Char) |
Determina si un valor es normal. |
| INumberBase<Char>.IsOddInteger(Char) |
Determina si un valor representa un número entero impar. |
| INumberBase<Char>.IsPositive(Char) |
Determina si un valor es positivo. |
| INumberBase<Char>.IsPositiveInfinity(Char) |
Determina si un valor es infinito positivo. |
| INumberBase<Char>.IsRealNumber(Char) |
Determina si un valor representa un número real. |
| INumberBase<Char>.IsSubnormal(Char) |
Determina si un valor es subnormal. |
| INumberBase<Char>.IsZero(Char) |
Determina si un valor es cero. |
| INumberBase<Char>.MaxMagnitude(Char, Char) |
Compara dos valores con el proceso, que es mayor. |
| INumberBase<Char>.MaxMagnitudeNumber(Char, Char) |
Compara dos valores con el proceso que tiene la magnitud mayor y devuelve el otro valor si una entrada es |
| INumberBase<Char>.MinMagnitude(Char, Char) |
Compara dos valores con el proceso, que es menor. |
| INumberBase<Char>.MinMagnitudeNumber(Char, Char) |
Compara dos valores con el proceso que tiene la magnitud menor y devuelve el otro valor si una entrada es |
| INumberBase<Char>.MultiplyAddEstimate(Char, Char, Char) |
Calcula una estimación de ( |
| INumberBase<Char>.One |
Obtiene el valor |
| INumberBase<Char>.Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider) |
Analiza un intervalo de caracteres en un valor. |
| INumberBase<Char>.Parse(String, NumberStyles, IFormatProvider) |
Analiza una cadena en un valor. |
| INumberBase<Char>.Radix |
Obtiene la raíz, o base, para el tipo. |
| INumberBase<Char>.TryConvertFromChecked<TOther>(TOther, Char) |
Representa un carácter como una unidad de código UTF-16. |
| INumberBase<Char>.TryConvertFromSaturating<TOther>(TOther, Char) |
Representa un carácter como una unidad de código UTF-16. |
| INumberBase<Char>.TryConvertFromTruncating<TOther>(TOther, Char) |
Representa un carácter como una unidad de código UTF-16. |
| INumberBase<Char>.TryConvertToChecked<TOther>(Char, TOther) |
Intenta convertir una instancia del tipo actual en otro tipo, iniciando una excepción de desbordamiento para los valores que se encuentran fuera del intervalo que se puede representar del tipo actual. |
| INumberBase<Char>.TryConvertToSaturating<TOther>(Char, TOther) |
Intenta convertir una instancia del tipo actual en otro tipo, saturando los valores que se encuentran fuera del intervalo que se puede representar del tipo actual. |
| INumberBase<Char>.TryConvertToTruncating<TOther>(Char, TOther) |
Intenta convertir una instancia del tipo actual en otro tipo, truncando los valores que se encuentran fuera del intervalo que se puede representar del tipo actual. |
| INumberBase<Char>.TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Char) |
Representa un carácter como una unidad de código UTF-16. |
| INumberBase<Char>.TryParse(String, NumberStyles, IFormatProvider, Char) |
Representa un carácter como una unidad de código UTF-16. |
| INumberBase<Char>.Zero |
Obtiene el valor |
| IParsable<Char>.Parse(String, IFormatProvider) |
Analiza una cadena en un valor. |
| IParsable<Char>.TryParse(String, IFormatProvider, Char) |
Representa un carácter como una unidad de código UTF-16. |
| IShiftOperators<Char,Int32,Char>.LeftShift(Char, Int32) |
Desplaza un valor dejado por una cantidad determinada. |
| IShiftOperators<Char,Int32,Char>.RightShift(Char, Int32) |
Desplaza un valor hacia la derecha por una cantidad determinada. |
| IShiftOperators<Char,Int32,Char>.UnsignedRightShift(Char, Int32) |
Desplaza un valor hacia la derecha por una cantidad determinada. |
| ISpanFormattable.TryFormat(Span<Char>, Int32, ReadOnlySpan<Char>, IFormatProvider) |
Intenta dar formato al valor de la instancia actual en el intervalo de caracteres proporcionado. |
| ISpanParsable<Char>.Parse(ReadOnlySpan<Char>, IFormatProvider) |
Analiza un intervalo de caracteres en un valor. |
| ISpanParsable<Char>.TryParse(ReadOnlySpan<Char>, IFormatProvider, Char) |
Representa un carácter como una unidad de código UTF-16. |
| ISubtractionOperators<Char,Char,Char>.CheckedSubtraction(Char, Char) |
Resta dos valores para calcular su diferencia. |
| ISubtractionOperators<Char,Char,Char>.Subtraction(Char, Char) |
Resta dos valores para calcular su diferencia. |
| IUnaryNegationOperators<Char,Char>.CheckedUnaryNegation(Char) |
Calcula la negación unaria activada de un valor. |
| IUnaryNegationOperators<Char,Char>.UnaryNegation(Char) |
Calcula la negación unaria de un valor. |
| IUnaryPlusOperators<Char,Char>.UnaryPlus(Char) |
Calcula la unaria más de un valor. |
| IUtf8SpanFormattable.TryFormat(Span<Byte>, Int32, ReadOnlySpan<Char>, IFormatProvider) |
Intenta dar formato al valor de la instancia actual como UTF-8 en el intervalo de bytes proporcionado. |
| IUtf8SpanParsable<Char>.Parse(ReadOnlySpan<Byte>, IFormatProvider) |
Representa un carácter como una unidad de código UTF-16. |
| IUtf8SpanParsable<Char>.TryParse(ReadOnlySpan<Byte>, IFormatProvider, Char) |
Representa un carácter como una unidad de código UTF-16. |
Se aplica a
Seguridad para subprocesos
Todos los miembros de este tipo son seguros para subprocesos. Los miembros que parecen modificar el estado de instancia devuelven realmente una nueva instancia inicializada con el nuevo valor. Al igual que con cualquier otro tipo, leer y escribir en una variable compartida que contenga una instancia de este tipo debe estar protegida por un bloqueo para garantizar la seguridad de los subprocesos.