C#-এ Char.ToString() মেথডটি বর্তমান char ইনস্ট্যান্সের সমতুল্য স্ট্রিং রিপ্রেজেন্টেশন ফেরত দেয়। এটি একটি ক্যারেক্টারকে দৈর্ঘ্য ১-এর স্ট্রিং-এ রূপান্তর করে।
সিনট্যাক্স (Syntax)
public override string ToString();
উদাহরণ ১: ছোট হাতের অক্ষর
using System;
public class Demo
{
public static void Main()
{
char ch = 'p';
Console.WriteLine("Value = " + ch);
char lower = Char.ToLowerInvariant(ch);
Console.WriteLine("Lowercase Equivalent = " + lower);
string str = ch.ToString();
Console.WriteLine("String Equivalent = " + str);
}
}
আউটপুট
Value = p Lowercase Equivalent = p String Equivalent = p
উদাহরণ ২: বড় হাতের অক্ষর (লোয়ারকেস কনভার্সন সহ)
using System;
public class Demo
{
public static void Main()
{
char ch = 'D';
Console.WriteLine("Value = " + ch);
char lower = Char.ToLowerInvariant(ch);
Console.WriteLine("Lowercase Equivalent = " + lower);
string str = ch.ToString();
Console.WriteLine("String Equivalent = " + str);
}
}
আউটপুট
Value = D Lowercase Equivalent = d String Equivalent = D
Char.ToString() এর বিকল্প পদ্ধতিগুলো
| পদ্ধতি | উদাহরণ | বর্ণনা |
|---|---|---|
ch.ToString() | 'a'.ToString() | ইনস্ট্যান্স মেথড (সুপারিশকৃত) |
char.ToString(ch) | char.ToString('a') | স্ট্যাটিক মেথড |
new string(ch, 1) | new string('a', 1) | কনস্ট্রাক্টর (রিপিট করার জন্যও কাজ করে) |
"" + ch | "" + 'a' | স্ট্রিং কনক্যাটেনেশন (অপ্টিমাইজড) |
$"{ch}" | $"{ch}" | ইন্টারপোলেশন (আধুনিক) |
পারফরম্যান্স তুলনা
using System;
using System.Diagnostics;
public class PerfTest
{
public static void Main()
{
char ch = 'X';
int iterations = 10_000_000;
var sw = Stopwatch.StartNew();
for (int i = 0; i < iterations; i++) ch.ToString();
sw.Stop();
Console.WriteLine($"ch.ToString(): {sw.ElapsedMilliseconds} ms");
sw.Restart();
for (int i = 0; i < iterations; i++) char.ToString(ch);
sw.Stop();
Console.WriteLine($"char.ToString(ch): {sw.ElapsedMilliseconds} ms");
sw.Restart();
for (int i = 0; i < iterations; i++) new string(ch, 1);
sw.Stop();
Console.WriteLine($"new string(ch,1): {sw.ElapsedMilliseconds} ms");
sw.Restart();
for (int i = 0; i < iterations; i++) "" + ch;
sw.Stop();
Console.WriteLine($"\"\" + ch: {sw.ElapsedMilliseconds} ms");
}
}
Char.ToLowerInvariant() সম্পর্কে সংক্ষিপ্ত
উদাহরণে ব্যবহৃত Char.ToLowerInvariant(ch) ইনভারিয়ান্ট কালচার (Invariant Culture) অনুযায়ী ক্যারেক্টারকে লোয়ারকেসে রূপান্তর করে। এটি التركية (Turkish) 'I' ↔ 'ı' সমস্যা এড়াতে সাহায্য করে।
টর্কিশ 'I' সমস্যা উদাহরণ
using System;
using System.Globalization;
public class TurkishDemo
{
public static void Main()
{
char turkishI = 'I'; // U+0049
// ডিফল্ট (CurrentCulture - Turkish এसे)
CultureInfo.CurrentCulture = new CultureInfo("tr-TR");
Console.WriteLine($"ToLower (tr-TR): '{char.ToLower(turkishI)}'"); // ı (U+0131)
// Invariant Culture
Console.WriteLine($"ToLowerInvariant: '{char.ToLowerInvariant(turkishI)}'"); // i (U+0069)
}
}
সারসংক্ষেপ: char.ToString() একটি ক্যারেক্টারকে স্ট্রিং-এ রূপান্তর করার সবচেয়ে সরল এবং পঠনীয় পদ্ধতি।