Data Types (Part-6)
ဒီသင်ခန်းစာမှာ C# Program အတွင်း သိမ်းဆည်းမည့် Data အမျိုးအစားကို သတ်မှတ်ပေးသော Data Type များအကြောင်း လေ့လာသွားမည်ဖြစ်သည်။ int, long, float, double, decimal, char, string, bool နှင့် DateTime တို့၏ ကွာခြားချက်၊ အသုံးပြုပုံနှင့် အခြေအနေအလိုက် သင့်တော်သည့် Data Type ရွေးချယ်ပုံတို့ကို လက်တွေ့နမူနာများဖြင့် ရှင်းလင်းထားသည်။
Date and Time Data Type
16. DateTime Data Type
DateTime ကို ရက်စွဲနဲ့ အချိန် Data များ သိမ်းဖို့ အသုံးပြုပါတယ်။
DateTime courseStartDate = new DateTime(2026, 8, 1);
DateTime တည်ဆောက်တဲ့ အခြေခံပုံစံမှာ—
new DateTime(year, month, day)
ကို အသုံးပြုနိုင်ပါတယ်။
နမူနာ—
DateTime birthDate = new DateTime(2008, 5, 15); Console.WriteLine(birthDate);
ရက်စွဲနဲ့ အချိန်ကို အတူတကွ သတ်မှတ်ချင်ရင်—
DateTime classTime = new DateTime(2026, 8, 1, 9, 30, 0);
ဒီမှာ—
-
2026က Year -
8က Month -
1က Day -
9က Hour -
30က Minute -
0က Second
ဖြစ်ပါတယ်။
17. လက်ရှိရက်စွဲနဲ့ အချိန် ရယူခြင်း
လက်ရှိရက်စွဲနဲ့ အချိန်ကို DateTime.Now နဲ့ ရယူနိုင်ပါတယ်။
DateTime currentDateTime = DateTime.Now; Console.WriteLine(currentDateTime);
လက်ရှိရက်စွဲသီးသန့်ကို DateTime.Today နဲ့ ရယူနိုင်ပါတယ်။
DateTime today = DateTime.Today; Console.WriteLine(today);
ကွာခြားချက်က—
-
DateTime.Nowမှာ ရက်စွဲနဲ့ လက်ရှိအချိန် ပါပါတယ်။ -
DateTime.Todayမှာ ရက်စွဲပါပြီး အချိန်က00:00:00ဖြစ်ပါတယ်။
18. DateTime Format ပြောင်းခြင်း
DateTime ကို လိုချင်တဲ့ပုံစံနဲ့ ပြသဖို့ ToString() ကို အသုံးပြုနိုင်ပါတယ်။
DateTime today = DateTime.Now; Console.WriteLine(today.ToString("dd/MM/yyyy")); Console.WriteLine(today.ToString("yyyy-MM-dd")); Console.WriteLine(today.ToString("hh:mm tt"));
Format များ၏ အဓိပ္ပာယ်—
| Format | အဓိပ္ပာယ် |
|---|---|
dd | ရက် |
MM | လ |
yyyy | နှစ် |
HH | 24-hour စနစ်အချိန် |
hh | 12-hour စနစ်အချိန် |
mm | မိနစ် |
ss | စက္ကန့် |
tt | AM သို့မဟုတ် PM |
နမူနာ—
DateTime classDate = new DateTime(2026, 8, 15, 9, 30, 0); Console.WriteLine($"Class Date: {classDate:dd/MM/yyyy}"); Console.WriteLine($"Class Time: {classDate:hh:mm tt}");
Output—
Class Date: 15/08/2026 Class Time: 09:30 AM
Other Useful Types
19. object Data Type
object ထဲမှာ Data Type အမျိုးမျိုးကို သိမ်းနိုင်ပါတယ်။
object studentName = "Aung Aung"; object studentAge = 18; object courseFee = 150000.50m; object isActive = true;
object က Data အမျိုးမျိုးကို သိမ်းနိုင်ပေမယ့် Data Type တိတိကျကျသိထားတဲ့အခါ သက်ဆိုင်ရာ Type ကို အသုံးပြုတာ ပိုကောင်းပါတယ်။
ဥပမာ—
string studentName = "Aung Aung"; int studentAge = 18;
ဒီပုံစံက Code ဖတ်တဲ့အခါ Data Type ကို ချက်ချင်းနားလည်နိုင်ပါတယ်။
20. var နဲ့ Data Type
var ကို အသုံးပြုရင် Compiler က Value ကိုကြည့်ပြီး Data Type သတ်မှတ်ပေးပါတယ်။
var name = "Aung Aung"; // string var age = 18; // int var price = 15000.50m; // decimal var isActive = true; // bool
var ဟာ Data Type တစ်ခု မဟုတ်ပါဘူး။ Compiler ကို Data Type ခန့်မှန်းသတ်မှတ်ခိုင်းတဲ့ Keyword ဖြစ်ပါတယ်။
Data Type ကို ရှင်းရှင်းလင်းလင်း မြင်ချင်တဲ့ Beginner တွေအတွက်တော့—
string name = "Aung Aung"; int age = 18; decimal price = 15000.50m; bool isActive = true;
လို တိကျတဲ့ Data Type နဲ့ ရေးသားလေ့ကျင့်တာ ပိုကောင်းပါတယ်။
Value Types နှင့် Reference Types
C# Data Types တွေကို အခြေခံအားဖြင့်—
- Value Types
- Reference Types
ဆိုပြီး ခွဲခြားနိုင်ပါတယ်။
21. Value Types
Value Type Variable က တန်ဖိုးကို တိုက်ရိုက်သိမ်းထားပါတယ်။
အသုံးများတဲ့ Value Types များ—
int long float double decimal char bool DateTime
နမူနာ—
int firstNumber = 10; int secondNumber = firstNumber; secondNumber = 20; Console.WriteLine(firstNumber); Console.WriteLine(secondNumber);
Output—
10 20
firstNumber ရဲ့ Value ကို secondNumber ထဲ ကူးထည့်ထားတာဖြစ်ပါတယ်။ secondNumber ကို ပြောင်းလဲပေမယ့် firstNumber မပြောင်းပါဘူး။
22. Reference Types
Reference Type Variable က Data ရှိတဲ့နေရာကို ညွှန်းပေးတဲ့ Reference ကို သိမ်းထားပါတယ်။
string, array, class နဲ့ object တို့ဟာ Reference Types များဖြစ်ပါတယ်။
string courseName = "C# Programming Basic";
ဒီအဆင့်မှာ Value Type နဲ့ Reference Type ရဲ့ အတွင်းပိုင်း Memory အလုပ်လုပ်ပုံကို အသေးစိတ်မှတ်သားဖို့ မလိုသေးပါဘူး။ Array၊ Class နဲ့ Object သင်ခန်းစာတွေမှာ ပိုမိုရှင်းလင်းစွာ လေ့လာသွားပါမယ်။
သင့်တော်သော Data Type ရွေးချယ်ခြင်း
23. ဘယ် Data အတွက် ဘယ် Type သုံးမလဲ
| သိမ်းမည့် Data | သင့်တော်သော Data Type | နမူနာ |
|---|---|---|
| ကျောင်းသားအမည် | string | "Aung Aung" |
| အသက် | int | 18 |
| အမှတ် | int သို့မဟုတ် double | 85, 85.5 |
| Grade | char | 'A' |
| Course Fee | decimal | 150000.00m |
| အရပ်အကွာအဝေး | double | 125.75 |
| Active ဖြစ်၊ မဖြစ် | bool | true |
| သင်တန်းစသည့်နေ့ | DateTime | new DateTime(2026, 8, 1) |
| အလွန်ကြီးသော ကိန်းပြည့် | long | 9000000000L |
Data Type ရွေးချယ်တဲ့အခါ—
- Value က ကိန်းပြည့်လား
- ဒဿမကိန်းလား
- စာသားလား
- စာလုံးတစ်လုံးလား
- ငွေကြေးလား
- ရက်စွဲလား
- မှန်၊ မမှန် အခြေအနေလား
ဆိုတာကို အရင်စဉ်းစားသင့်ပါတယ်။