Friday, December 6, 2019

Kiểu dữ liệu trong C#

Các biến trong  C#, được phân loại thành các loại sau:

  1. Các loại giá trị
  2. Loại tham chiếu
  3. Loại con trỏ
  4. Loại giá trị

Biến loại giá trị có thể được gán một giá trị trực tiếp. Chúng có nguồn gốc từ lớp System.ValueType .

Các loại giá trị trực tiếp chứa dữ liệu. Một số ví dụ là int, char và float , tương ứng lưu trữ số, bảng chữ cái và số dấu phẩy động. Khi bạn khai báo một kiểu int , hệ thống sẽ cấp phát bộ nhớ để lưu trữ giá trị.
Kiểu dữ liệu trong C#
Bảng sau liệt kê các loại giá trị khả dụng trong  C# 2010 :
Để có được kích thước chính xác của một loại hoặc một biến trên một nền tảng cụ thể, bạn có thể sử dụng phương thức sizeof . Kích thước biểu thức (loại) mang lại kích thước lưu trữ của đối tượng hoặc nhập theo byte. Sau đây là một ví dụ để lấy kích thước của kiểu int trên bất kỳ máy nào -
Bản thử trực tiếp
using System;
namespace DataTypeApplication {
   class Program {
      static void Main(string[] args) {
         Console.WriteLine("Size of int: {0}", sizeof(int));
         Console.ReadLine();
      }
   }
Khi đoạn mã trên được biên dịch và thực thi, nó tạo ra kết quả sau -
Size of int: 4

Loại tham chiếu

Các kiểu tham chiếu không chứa dữ liệu thực tế được lưu trữ trong một biến, nhưng chúng chứa tham chiếu đến các biến.
Nói cách khác, họ đề cập đến một vị trí bộ nhớ. Sử dụng nhiều biến, các loại tham chiếu có thể tham chiếu đến một vị trí bộ nhớ. Nếu dữ liệu ở vị trí bộ nhớ bị thay đổi bởi một trong các biến, biến khác sẽ tự động phản ánh thay đổi này về giá trị. Ví dụ về built-in tài liệu tham khảo các loại bao gồm: đối tượng , năng động, và chuỗi .

Loại đối tượng

Các Loại Object là lớp cơ sở cuối cùng cho tất cả các loại dữ liệu trong  C# Loại hệ thống chung (CTS). Đối tượng là một bí danh cho lớp System.Object. Các loại đối tượng có thể được gán giá trị của bất kỳ loại nào khác, loại giá trị, loại tham chiếu, loại được xác định trước hoặc loại do người dùng xác định. Tuy nhiên, trước khi gán giá trị, nó cần chuyển đổi loại.

Khi một loại giá trị được chuyển đổi thành loại đối tượng, nó được gọi là quyền anh và mặt khác, khi một loại đối tượng được chuyển đổi thành một loại giá trị, nó được gọi là unboxing .
object obj;
obj = 100; // this is boxing

Kiểu động

Bạn có thể lưu trữ bất kỳ loại giá trị nào trong biến kiểu dữ liệu động. Kiểm tra loại cho các loại biến này diễn ra trong thời gian chạy.
Cú pháp khai báo một kiểu động là
dynamic <variable_name> = value;
Ví dụ,
dynamic d = 20;
Các kiểu động tương tự như các kiểu đối tượng ngoại trừ kiểu kiểm tra các biến loại đối tượng diễn ra vào thời gian biên dịch, trong khi đó đối với các biến kiểu động diễn ra trong thời gian chạy.

Kiểu chuỗi

Các kiểu String cho phép bạn gán bất kỳ giá trị chuỗi cho một biến. Kiểu chuỗi là bí danh cho lớp System.String. Nó có nguồn gốc từ loại đối tượng. Giá trị cho một loại chuỗi có thể được chỉ định bằng cách sử dụng chuỗi ký tự theo hai dạng: trích dẫn và @quote.
Ví dụ,

String str = "Code java Example";
Một chuỗi ký tự @quote trông như sau -
@"Code java Example";
Các kiểu tham chiếu do người dùng định nghĩa là: lớp, giao diện hoặc ủy nhiệm. Chúng ta sẽ thảo luận về các loại trong chương sau.

Loại con trỏ

Các biến kiểu con trỏ lưu địa chỉ bộ nhớ của loại khác. Con trỏ trong  C# có khả năng giống như con trỏ trong C hoặc C ++.
Cú pháp khai báo một loại con trỏ là -
type* identifier;
Ví dụ,
char* cptr;
int* iptr;
Chúng tôi sẽ thảo luận về các loại con trỏ trong chương 'Mã không an toàn'.

No comments:

Post a Comment