Giới thiệu
Phương thức Int16.ToString() trong C# chuyển đổi giá trị số nguyên 16-bit có dấu (short) thành biểu diễn chuỗi tương đương. Hỗ trợ nhiều định dạng số thông qua tham số format.
Cú pháp
public override string ToString (); public string ToString (string format);
Tham số format là chuỗi định dạng số (numeric format string).
Ví dụ 1: ToString() mặc định
using System;
public class Demo {
public static void Main() {
short val1 = 10;
short val2 = 10;
Console.WriteLine("Value1 = " + val1.ToString());
Console.WriteLine("Value2 = " + val2.ToString());
Console.WriteLine("HashCode cho value1 = " + val1.GetHashCode());
Console.WriteLine("HashCode cho value2 = " + val2.GetHashCode());
Console.WriteLine("Chúng có bằng nhau? = " + (val1.Equals(val2)));
}
}
Đầu ra ví dụ 1
Value1 = 10 Value2 = 10 HashCode cho value1 = 655370 HashCode cho value2 = 655370 Chúng có bằng nhau? = True
Ví dụ 2: ToString() với định dạng tùy chỉnh
using System;
public class Demo {
public static void Main() {
short val1 = 20;
short val2 = 18;
Console.WriteLine("Value 1 = " + val1.ToString("F1")); // Fixed-point 1 chữ số thập phân
Console.WriteLine("Value 2 = " + val2.ToString("000000.0000")); // Custom format: 6 chữ số nguyên, 4 chữ số thập phân
Console.WriteLine("Giá trị trả về (so sánh) = " + val1.CompareTo(val2));
}
}
Đầu ra ví dụ 2
Value 1 = 20.0 Value 2 = 000018.0000 Giá trị trả về (so sánh) = 2
Các định dạng số phổ biến (Standard Numeric Format Strings)
| Format | Tên | Ví dụ (val=1234) | Mô tả |
|---|---|---|---|
| C / c | Currency | $1,234.00 | Tiền tệ theo culture |
| D / d | Decimal | 1234 | Số nguyên, có thể chỉ độ rộng (D6 → 001234) |
| E / e | Scientific | 1.234000E+003 | Ký hiệu khoa học |
| F / f | Fixed-point | 1234.00 | Số thập phân cố định (F2 → 2 chữ số) |
| G / g | General | 1234 | Mặc định, tối ưu độ dài |
| N / n | Number | 1,234.00 | Có dấu phân cách nhóm, thập phân |
| X / x | Hexadecimal | 4D2 | Hex chữ hoa/thường |
Custom Format Strings (Định dạng tùy chỉnh)
| Ký tự | Ý nghĩa | Ví dụ (1234.56) |
|---|---|---|
| 0 | Chữ số bắt buộc (điền 0 nếu thiếu) | 0000.00 → 1234.56 |
| # | Chữ số tùy chọn (không điền 0) | ####.## → 1234.56 |
| . | Dấu thập phân | 0.00 → 1234.56 |
| , | Dấu phân cách nhóm | #,# → 1,234 |
| % | Phần trăm (nhân 100) | 0% → 123456% |
Lưu ý
Int16là alias củashort, phạm vi -32,768 đến 32,767.- Khi dùng custom format với dấu phẩy/thập phân, kết quả phụ thuộc vào
CultureInfo.CurrentCulture. - Để kiểm soát culture, dùng overload
ToString(string, IFormatProvider).