Biến và kiểu dữ liệu trong c#

Trong C#, biến là một vùng nhớ được cấp phát trong bộ nhớ để lưu trữ dữ liệu, và mỗi biến cần được khai báo với một kiểu dữ liệu nhất định

  1. Khai báo và khởi tạo biến trong C#
  2. Các kiểu dữ liệu trong C#
  3. Một số cách khai báo biến khác
  4. Nguyên tắt đặt tên biến

Kiểu dữ liệu xác định loại giá trị mà biến có thể chứa và các thao tác có thể thực hiện trên biến đó.

1. Khai báo và khởi tạo biến trong C#

Cú pháp khai báo biến trong C#

Có 2 cách hay sử dụng để khai báo biến trong C#

Khai báo và khởi tạo giá trị cho biến

<kiểu dữ liệu> <tên biến> = <giá trị khởi tạo>;

Hoặc nếu chưa cần gán giá trị ban đầu

<kiểu dữ liệu> <tên biến>;

Ví dụ khai báo biến

int age;  // Khai báo một biến kiểu int với tên là age
age = 25; // Gán giá trị 25 cho biến age

// Hoặc bạn có thể khai báo và khởi tạo biến cùng một lúc:
string name = "Nhật"; // Khai báo và khởi tạo biến kiểu string

int age = 25;          // Biến kiểu số nguyên
double pi = 3.14;      // Biến kiểu số thực
string name = "Nhật";  // Biến kiểu chuỗi
bool isActive = true;  // Biến kiểu Boolean

khóa học c# căn bản

 

 

2. Các kiểu dữ liệu trong C#

C# có nhiều loại kiểu dữ liệu, được phân thành các loại chính sau đây:

    int - kiểu số nguyên
    double - kiểu số thập phân
    char - kiểu ký tự (1 ký tự duy nhất)
    string - chứa nhiều ký tự
    bool - chứa kiểu đúng / sai
    byte - lưu số nhỏ, byte[] dùng để lưu file vào CSDL, hay lấy file xuống.
    object kiểu không xác định.

2.1. Kiểu dữ liệu số học

int: Kiểu số nguyên (không có phần thập phân), dung lượng 4 byte.
int age = 25;

double: Kiểu số thực (dùng để lưu trữ các giá trị có phần thập phân), dung lượng 8 byte.
double price = 19.99;

float: Kiểu số thực với độ chính xác thấp hơn double, dung lượng 4 byte. Cần thêm chữ f khi khởi tạo.
float temperature = 36.5f;

long: Kiểu số nguyên dài, dung lượng 8 byte.
long distance = 1000000000L;

short: Kiểu số nguyên ngắn, dung lượng 2 byte.
short level = 10;

byte: Kiểu số nguyên không dấu, dung lượng 1 byte, chỉ có giá trị từ 0 đến 255.
byte ageInDays = 100;

decimal: Kiểu số thực với độ chính xác cao, dung lượng 16 byte, thích hợp cho tính toán tài chính.
    decimal balance = 1000.75m;

2.2. Kiểu dữ liệu ký tự và chuỗi

char: Kiểu ký tự, lưu trữ một ký tự duy nhất (2 byte).
char kt = 'A';

string: Kiểu chuỗi, dùng để lưu trữ các chuỗi văn bản. Dung lượng phụ thuộc vào độ dài chuỗi.
    string name = "lập trình iif.vn";

2.3. Kiểu dữ liệu Boolean

    bool: Kiểu Boolean, lưu trữ giá trị đúng (true) hoặc sai (false).
    bool isActive = true;

2.4. Kiểu dữ liệu Nullable

C# hỗ trợ kiểu dữ liệu Nullable, cho phép một biến có thể nhận giá trị null (không có giá trị). Điều này rất hữu ích khi bạn cần một giá trị chưa được xác định hoặc không có giá trị hợp lệ.

    Cú pháp: type? (ví dụ: int?, double?)

    int? age = null;

2.5. Kiểu dữ liệu tham chiếu (Reference Types)

Các kiểu dữ liệu tham chiếu không lưu trữ dữ liệu trực tiếp, thay vào đó, chúng lưu trữ một tham chiếu đến dữ liệu. Các kiểu dữ liệu tham chiếu bao gồm:

    string: Mặc dù string được xem như một kiểu giá trị trong C#, nhưng nó cũng là một kiểu tham chiếu.
    Array: Mảng.
    Class: Lớp.
    Object: Kiểu dữ liệu cơ bản nhất trong C#, tất cả các kiểu dữ liệu khác đều kế thừa từ object.

Ví dụ mảng:

int[] numbers = new int[] { 1, 2, 3, 4 };

3. Một số cách khai báo biến khác

Khai báo nhiều biến cùng lúc

Bạn có thể khai báo nhiều biến cùng kiểu trên một dòng:

int a = 10, b = 20, c = 30;

Hoặc khai báo mà chưa gán giá trị:

int x, y, z;
x = 5;
y = 10;
z = x + y;

Sử dụng var (Khai báo biến ngầm định)

Trong C#, từ khóa var cho phép khai báo biến mà không cần chỉ rõ kiểu dữ liệu. Kiểu của biến sẽ được xác định dựa trên giá trị khởi tạo.

var number = 100;   // number sẽ là kiểu int
var message = "Xin chào";  // message sẽ là kiểu string
var pi = 3.1415;    // pi sẽ là kiểu double

📌 Lưu ý: var bắt buộc phải có giá trị khởi tạo ngay khi khai báo.

Hằng số (Constant)

Nếu không muốn thay đổi giá trị của biến sau khi gán, dùng const:

const double Pi = 3.14159;
const int MaxValue = 100;

📌 Lưu ý:

    const bắt buộc phải gán giá trị ngay khi khai báo.
    Không thể gán lại giá trị khác sau này.

Biến Nullable (cho phép null)

Trong C#, các kiểu giá trị như int, double, bool không thể có giá trị null trừ khi khai báo với ?.

int? age = null;  // Biến có thể mang giá trị null
double? score = 9.5;

Ví dụ biến Nullable trong C#

Code 1:  int diem;   thì biến diem có giá trị là số 0
Code 2:  int? diem;   thì biến diem có giá trị là null

null nghĩa là gì ? null trong C# có nghĩa có không có gì thường được sử dụng để lưu xuống CSDL SQL server,

vậy biến diem là null sẽ khác, là 0 sẽ khác, Null có nghĩa là chưa lưu, 0 có nghĩa là 0 điểm.

📌 Dùng khi làm việc với dữ liệu có thể không có giá trị (như database). 

 Bảng so sánh các cách khai báo biến

Kiểu khai báo Cú pháp Ví dụ
Biến thông thường <kiểu dữ liệu> <tên biến> = <giá trị>; int a = 10;
Khai báo nhiều biến <kiểu dữ liệu> var1, var2; int x, y, z;
Biến ngầm định (var) var <tên biến> = <giá trị>; var name = "Nhật";
Hằng số (const) const <kiểu dữ liệu> <tên biến> = <giá trị>; const double Pi = 3.14;
Biến Nullable (?) <kiểu dữ liệu>? <tên biến> = null; int? age = null;

4. Nguyên tắt đặt tên biến

Trong C#, các biến được đặt tên theo những nguyên tắc nhất định để đảm bảo tính dễ hiểu và khả năng duy trì mã nguồn. Dưới đây là các nguyên tắc cơ bản khi đặt tên biến trong C#

    Tên biến phải có nghĩa

Tên biến nên mô tả rõ ràng mục đích hoặc giá trị mà nó lưu trữ. Tránh dùng tên quá chung chung như temp, data, var.

    Bắt đầu bằng chữ cái hoặc dấu gạch dưới

Tên biến không được bắt đầu bằng số. Nó có thể bắt đầu bằng một chữ cái (a-z, A-Z) hoặc dấu gạch dưới (_).

    Sử dụng ký tự hoa và thường để dễ nhận biết ý nghĩa biến

        camelCase: Dùng cho tên biến, với chữ cái đầu tiên viết thường và các từ tiếp theo viết hoa. Ví dụ: studentAge, totalAmount.
        PascalCase: Thường được dùng cho các tên lớp, phương thức hoặc thuộc tính. Ví dụ: StudentAge, CalculateTotalAmount.

    Không sử dụng ký tự đặc biệt

Tên biến không được chứa các ký tự đặc biệt như @, #, $, &, vv (ngoại trừ dấu gạch dưới _ nếu cần).

    Không dùng từ khóa của C#

C# có một số từ khóa bảo vệ (keywords) như int, class, public, vv, không thể dùng làm tên biến. Tuy nhiên, bạn có thể dùng dấu @ trước từ khóa để biến nó thành tên hợp lệ, ví dụ: @class, @int.

Tìm kiếm:

Trong C#, biến là một vùng nhớ được cấp phát trong bộ nhớ để lưu trữ dữ liệu, và mỗi biến cần được khai báo với một kiểu dữ liệu nhất định