Phương thức SByte.ToString() trong C# được dùng để chuyển đổi giá trị số của instance này thành biểu diễn chuỗi tương đương. SByte là số nguyên có dấu 8-bit (phạm vi -128 đến 127).
Cú pháp
public override string ToString();
Cũng hỗ trợ các nạp chồng với định dạng: ToString(string format), ToString(IFormatProvider), ToString(string, IFormatProvider).
Ví dụ 1: ToString cơ bản, CompareTo, GetHashCode, GetTypeCode
using System;
public class Demo
{
public static void Main()
{
sbyte s1 = 10;
sbyte s2 = 100;
Console.WriteLine("Giá trị S1 = " + s1);
Console.WriteLine("Giá trị S2 = " + s2);
int res = s1.CompareTo(s2);
if (res > 0)
Console.WriteLine("s1 > s2");
else if (res < 0)
Console.WriteLine("s1 < s2");
else
Console.WriteLine("s1 = s2");
Console.WriteLine("\nMã băm cho s1 = " + s1.GetHashCode());
Console.WriteLine("TypeCode cho s1 = " + s1.GetTypeCode());
Console.WriteLine("Biểu diễn chuỗi cho s1 = " + s1.ToString());
Console.WriteLine("\nMã băm cho s2 = " + s2.GetHashCode());
Console.WriteLine("TypeCode cho s2 = " + s2.GetTypeCode());
Console.WriteLine("Biểu diễn chuỗi cho s2 = " + s2.ToString());
}
}
Kết quả
Giá trị S1 = 10 Giá trị S2 = 100 s1 < s2 Mã băm cho s1 = 2570 TypeCode cho s1 = SByte Biểu diễn chuỗi cho s1 = 10 Mã băm cho s2 = 25700 TypeCode cho s2 = SByte Biểu diễn chuỗi cho s2 = 100
Ví dụ 2: So sánh với MaxValue
using System;
public class Demo
{
public static void Main()
{
sbyte s1 = 99;
sbyte s2 = SByte.MaxValue; // 127
Console.WriteLine("Giá trị S1 = " + s1);
Console.WriteLine("Giá trị S2 = " + s2);
Console.WriteLine("s1 và s2 bằng nhau? = " + s1.Equals(s2));
int res = s1.CompareTo(s2);
if (res > 0)
Console.WriteLine("s1 > s2");
else if (res < 0)
Console.WriteLine("s1 < s2");
else
Console.WriteLine("s1 = s2");
Console.WriteLine("Biểu diễn chuỗi cho s1 = " + s1.ToString());
Console.WriteLine("Biểu diễn chuỗi cho s2 = " + s2.ToString());
}
}
Kết quả
Giá trị S1 = 99 Giá trị S2 = 127 s1 và s2 bằng nhau? = False s1 < s2 Biểu diễn chuỗi cho s1 = 99 Biểu diễn chuỗi cho s2 = 127
Các định dạng số (Standard Numeric Format Strings)
| Định dạng | Ví dụ (sbyte = 100) | Mô tả |
|---|---|---|
\"G\" hoặc không tham số |
100 | General (mặc định) |
\"D3\" |
100 | Decimal, tối thiểu 3 chữ số |
\"X\" |
64 | Hexadecimal chữ hoa |
\"x\" |
64 | Hexadecimal chữ thường |
\"N0\" |
100 | Number với phân cách nhóm |
SByte vs byte
| Đặc điểm | sbyte (SByte) |
byte (Byte) |
|---|---|---|
| Phạm vi | -128 đến 127 | 0 đến 255 |
| Kích thước | 8-bit | 8-bit |
| CLS-Compliant | Không | Có |
| Alias C# | sbyte | byte |
Lưu ý
SBytekhông tuân thủ CLS (Common Language Specification), tránh dùng trong public API cross-language.- Ưu tiên dùng
byte(unsigned) hoặcshort/intcho signed. ToString()hoạt động giống các kiểu số nguyên khác.