ประเภทข้อมูลใดที่มีอยู่ใน C#

Prapheth Khxmul Di Thi Mi Xyu Ni C



ชนิดข้อมูลเป็นส่วนสำคัญของภาษาโปรแกรมใดๆ และ C# มีชนิดข้อมูลหลายประเภทที่ใช้สำหรับการประกาศตัวแปร กำหนดเมธอด และสร้างอ็อบเจกต์ ในบทความนี้ เราจะพูดถึงประเภทข้อมูลต่างๆ ใน ​​C# และประเภทย่อย รวมถึงประเภทข้อมูลค่า การอ้างอิง และตัวชี้

ข้อมูลประเภทใดที่มีอยู่ใน C#

C# คือ ภาษาโปรแกรมที่พิมพ์อย่างมาก ซึ่งหมายความว่าต้องประกาศตัวแปรทั้งหมดด้วยประเภทข้อมูลเฉพาะ และมีประเภทข้อมูลหลักสามประเภท:







1: ประเภทข้อมูลค่า

ประเภทข้อมูลค่าคือประเภทที่เก็บค่าโดยตรงในหน่วยความจำ พวกมันถูกจัดสรรบนสแต็กและมักจะใช้สำหรับจัดเก็บชุดข้อมูลที่มีขนาดเล็กลง ต่อไปนี้เป็นประเภทย่อยของประเภทข้อมูลค่า:



ประเภทข้อมูลตัวเลข



ชนิดข้อมูลเหล่านี้ใช้สำหรับจัดเก็บค่าตัวเลข ประเภทข้อมูลตัวเลขแบ่งออกเป็นหลายประเภทย่อย เช่น ทศนิยม จำนวนเต็ม และตัวเลขทศนิยม:





  • จำนวนเต็ม: ชนิดข้อมูลเหล่านี้ใช้สำหรับจัดเก็บจำนวนเต็มและหมวดหมู่ย่อยของจำนวนเต็ม ได้แก่ sbyte, byte, short, ushort, int, uint, long และ ulong ช่วงของค่าที่แต่ละรูปแบบข้อมูลจำนวนเต็มสามารถเก็บได้จะแตกต่างกันไป
  • ตัวเลขทศนิยม: ชนิดข้อมูลเหล่านี้ใช้สำหรับจัดเก็บตัวเลขทศนิยม และประเภทย่อยของตัวเลขทศนิยม ได้แก่ จำนวนทศนิยมและเลขคู่ Float สามารถเก็บทศนิยมได้สูงสุด 7 หลักในขณะที่ Double สามารถเก็บทศนิยมได้สูงสุด 15 หลัก
  • ทศนิยม: ชนิดข้อมูลเหล่านี้ใช้เพื่อจัดเก็บจำนวนเต็มทศนิยมที่มีความแม่นยำสูง ทศนิยมสามารถเก็บได้ถึง 28 หลักทศนิยม

ประเภทข้อมูลบูลีน

ค่าบูลีนซึ่งสามารถเป็นจริงหรือเท็จเท่านั้นจะถูกเก็บไว้ในรูปแบบข้อมูลนี้



ประเภทข้อมูลตัวอักษร

อักขระเดี่ยวถูกจัดเก็บโดยใช้ชนิดข้อมูลนี้

ตัวอย่าง

โค้ดตัวอย่างต่อไปนี้แสดงวิธีใช้ประเภทข้อมูลค่าใน C#:

ใช้ระบบ;

เนมสเปซ ValueDataTypesตัวอย่าง
{
โปรแกรมคลาส
{
โมฆะคงที่หลัก ( สตริง [ ] หาเรื่อง )
{
int myInt = 5 ;
ลอย myFloat = 3.14f;
สองเท่า myDouble = 3.14159265359 ;
บูล myBool = จริง ;
ถ่าน myChar = 'เอ' ;

Console.WriteLine ( 'ค่าจำนวนเต็มของฉันคือ: ' + มายอินท์ ) ;
Console.WriteLine ( 'ค่าทศนิยมของฉันคือ: ' + มายโฟลต ) ;
Console.WriteLine ( 'คุณค่าสองเท่าของฉันคือ: ' + มายดับเบิ้ล ) ;
Console.WriteLine ( 'ค่าบูลีนของฉันคือ: ' + มายบูล ) ;
Console.WriteLine ( 'ค่าตัวละครของฉันคือ: ' + มายชาร์ ) ;
}
}
}

ในตัวอย่างนี้ เราได้ประกาศและเริ่มต้นตัวแปรของประเภทข้อมูลค่าต่างๆ เช่น int, float, double, bool และ char จากนั้นเราพิมพ์ค่าของตัวแปรเหล่านี้โดยใช้เมธอด Console.WriteLine ผลลัพธ์ของโปรแกรมนี้จะเป็น:

2: ประเภทข้อมูลอ้างอิง

ชนิดข้อมูลอ้างอิงคือประเภทที่เก็บข้อมูลอ้างอิงไปยังตำแหน่งหน่วยความจำที่เก็บค่าไว้ พวกมันถูกจัดสรรบนฮีปและโดยทั่วไปจะใช้สำหรับจัดเก็บข้อมูลจำนวนมากขึ้น ต่อไปนี้เป็นประเภทย่อยของชนิดข้อมูลอ้างอิง:

ระดับ

ใน C# คลาสคือประเภทการอ้างอิงที่กำหนดพิมพ์เขียวสำหรับสร้างวัตถุ

สตริง

ชนิดข้อมูลอ้างอิงนี้ใช้สำหรับจัดเก็บข้อมูลข้อความ สตริงเป็นชนิดการอ้างอิง แต่มีลักษณะการทำงานเหมือนชนิดค่าในหลายๆ รูปแบบ

อาร์เรย์

คอลเลกชันของค่าประเภทเดียวกันสามารถจัดเก็บได้โดยใช้ข้อมูลประเภทนี้ อาร์เรย์เป็นประเภทการอ้างอิง แต่ก็สามารถทำงานเหมือนประเภทค่าได้ในบางกรณี

อินเตอร์เฟซ

อินเทอร์เฟซกำหนดชุดของเมธอด คุณสมบัติ เหตุการณ์ และตัวสร้างดัชนี โดยไม่ต้องให้รายละเอียดการใช้งานใดๆ

ผู้รับมอบสิทธิ์

ผู้รับมอบสิทธิ์อนุญาตให้คุณส่งผ่านเมธอดเป็นอาร์กิวเมนต์ไปยังเมธอดอื่น จากนั้นเรียกใช้เมธอดนั้นผ่านผู้รับมอบสิทธิ์ในภายหลัง

ตัวอย่าง

นี่คือตัวอย่างโค้ด C# ที่แสดงวิธีใช้ ชนิดข้อมูลอ้างอิง :

ใช้ระบบ;

คลาสบุคคล
{
ชื่อสตริงสาธารณะ;
อายุ int สาธารณะ;
}

โปรแกรมคลาส
{
โมฆะคงที่หลัก ( สตริง [ ] หาเรื่อง )
{
คน คน1 = คนใหม่ ( ) ;
คน1.ชื่อ = 'ตัวเขาเอง' ;
คน1.อายุ = ยี่สิบ ;

คน คน2 = คน1;
คน2.อายุ = 30 ;

Console.WriteLine ( คน1.ชื่อ + ' เป็น ' +บุคคล1.อายุ+ ' ปี.' ) ;
Console.WriteLine ( คน2.ชื่อ + ' เป็น ' +คนที่2.อายุ+ ' ปี.' ) ;
}
}

คลาสบุคคลในตัวอย่างนี้มีฟิลด์สาธารณะสองฟิลด์: ชื่อ ซึ่งเป็นประเภทสตริง และอายุ ซึ่งเป็นประเภท int จากนั้น เราสร้างอินสแตนซ์ใหม่ของคลาส Person และกำหนดให้กับ person1 ในเมธอด Main เราแก้ไขแอตทริบิวต์ชื่อและอายุของบุคคลที่ 1

ต่อไป เราสร้างตัวแปรอ้างอิงอีกตัวเป็น person2 และกำหนดค่าเป็น person1 จากนั้นเราเปลี่ยนคุณสมบัติอายุของบุคคลที่ 2 เป็น 30

สุดท้าย เราพิมพ์ชื่อและอายุของทั้งบุคคลที่ 1 และบุคคลที่ 2 โปรดสังเกตว่าการเปลี่ยนค่าของ บุคคลที่2.อายุ ยังเปลี่ยนค่าของ คน1.อายุ เนื่องจากตัวแปรทั้งสองอ้างอิงถึงตัวเดียวกัน วัตถุ ในความทรงจำ.

3: ชนิดข้อมูลตัวชี้

ชนิดข้อมูลตัวชี้ใช้สำหรับจัดเก็บที่อยู่หน่วยความจำของตัวแปรอื่น ใช้ในการเขียนโปรแกรมระดับต่ำ เช่น การเขียนโปรแกรมระดับระบบหรือการพัฒนาโปรแกรมควบคุมอุปกรณ์ . ใน C# ชนิดข้อมูลตัวชี้จะไม่ถูกใช้โดยตรง แต่สามารถใช้ในบล็อคโค้ดที่ไม่ปลอดภัยได้ ต่อไปนี้เป็นประเภทย่อยของชนิดข้อมูลตัวชี้:

ชนิดข้อมูลตัวชี้

ชนิดข้อมูลนี้ใช้สำหรับจัดเก็บที่อยู่หน่วยความจำของตัวแปรอื่น

นี่คือตัวอย่างที่แสดงให้เห็นถึงการใช้ ชนิดข้อมูลตัวชี้ ใน C# แม้ว่าจะต้องการการดูแลเป็นอย่างมาก:

ใช้ระบบ;

โปรแกรมคลาส {
โมฆะคงที่ไม่ปลอดภัยหลัก ( ) {
หมายเลข int = 10 ;
นานาชาติ * พี = & ในหนึ่ง;
Console.WriteLine ( $ 'มูลค่าของจำนวน: {num}' ) ;
Console.WriteLine ( $ 'ที่อยู่จำนวน: {(long)p:X}' ) ;
Console.WriteLine ( $ 'ค่าตัวเลขโดยใช้ตัวชี้: {*p}' ) ;
Console.ReadLine ( ) ;
}
}

ในตัวอย่างนี้ เราใช้คีย์เวิร์ดที่ไม่ปลอดภัยเพื่ออนุญาตให้ใช้พอยน์เตอร์ เราประกาศตัวแปร int-type และให้ค่าเป็น 10 จากนั้นเราสร้างตัวชี้ตัวแปร pointer ชนิด int* และกำหนดให้เป็นที่อยู่หน่วยความจำของค่าโดยใช้ตัวดำเนินการ &

นอกจากนี้ เราเข้าถึงค่าที่จัดเก็บไว้ในค่าโดยการลดการอ้างอิงตัวชี้โดยใช้ตัวดำเนินการ * และเรายังสามารถแก้ไขค่าโดยใช้ตัวดำเนินการเดียวกัน:

บันทึก: การใช้พอยน์เตอร์ใน C# จำเป็นต้องได้รับการเอาใจใส่เป็นพิเศษเพื่อหลีกเลี่ยงปัญหาการจัดการหน่วยความจำ ดังนั้นควรใช้พอยน์เตอร์เมื่อจำเป็นและด้วยความระมัดระวังเท่านั้น

บทสรุป

มีข้อมูลประเภทต่างๆ มากมายใน C# ซึ่งสามารถนำไปใช้กับงานต่างๆ ได้ ข้อมูลจำนวนน้อยจะถูกจัดเก็บโดยใช้ประเภทข้อมูลค่า และจำนวนที่มากขึ้นจะถูกจัดเก็บโดยใช้ประเภทข้อมูลอ้างอิง ชนิดข้อมูลตัวชี้ใช้ในการเขียนโปรแกรมระดับต่ำและไม่ได้ใช้ทั่วไปใน C#