Các kiểu dữ liệu và đặc điểm

Một phần của tài liệu hướng dẫn sử dụng visual basic (Trang 35 - 40)

I.1. Các kiu d liu

Các kiểu dữ liệu của .Net được mơ tả chi tiết trong một cấu trúc gọi là Common Type System (CTS). CTS định nghĩa các kiểu dữ liệu, cách thức sử dụng, cách thức được quản lý lúc thực thi và cùng với Common Language Specification đĩng một vai trị quan trọng trong việc trao đổi giữa các ngơn ngữ lập trình trong .Net.

Common Type System cĩ chức năng:

– Thiết lập một nền tảng cho phép tương tác giữa các ngơn ngữ lập trình, bảo tồn giá trị của dữ liệu khi cĩ sự trao đổi dữ liệu giữa các ngơn ngữ và bảo đảm việc thực hiện câu lệnh được tối ưu

– Cung cấp một mơ hình hướng đối tượng cho các ngơn ngữ lập trình.

– Đưa ra những quy tắc để các ngơn ngữ lập trình phải tuân thủ nhằm bảo đảm các thành phần viết trên các ngơn ngữ khác nhau cĩ thể tương tác với nhau.

Các kiểu dữ liệu trong VB.NET đã cĩ một số biến đổi cho phù hợp với các quy tắc của CTS. Dưới đây là hệ thống các kiểu dữ liệu chính tương ứng trong Common Language Runtime:

System.Object System.Array System.String System.ValueType System.Boolean System.Byte System.DateTime System.Decimal System.Char System.Double System.Int16 System.Int32 System.Int64 System.Single System.UInt16 System.UInt32 System.UInt64 Các kiểu dữ liệu nội tại của VB.NET Kiểu VB.Net Kiểu CLR System.x Vùng nhớ (Byte) Type Code Miền giá trị

Boolean Boolean 2 3 True hoặc False.

Byte Byte 1 6 0 đến 255 (khơng dấu). Char Char 2 4 0 đến 65535 (khơng dấu).

DateTime DateTime 8 16 0:00:00 ngày 01 tháng Giêng 0001 đến 23:59:59 ngày 31 tháng Mười Hai 9999.

Decimal Decimal 16 15 0 đến +/-79,228,162,514,264, 337,593,543,950,335 nếu khơng cĩ số lẻ;

0 đến +/-7.9228162514264337 593543950335 với 28 số lẻ; số nhỏ nhất

khác khơng là +/- 0.0000000000000000000000000001 (+/-

1E-28).

Double Double 8 14 -1.79769313486231570E+308 đến - 4.94065645841246544E -324 đối với số âm; 4.94065645841246544E-324 đến 1.79769313486231570E +308 với số dương. Integer Int32 4 9 -2,147,483,648 đến 2,147,483,647. Long Int64 8 11 -9,223,372,036,854,775,808 đến 9,223,372,036,854,775,807. Object Object

(Class) 4 Bbiấết kn kiỳ kiểu Object. ểu dữ liệu nào cĩ thể chứa trong Short Int16 2 7 -32,768 đến 32,767.

Single Single 4 13 -3.4028235E+38 đến -1.401298E-45 với số

âm; 1.401298E-45 đến 3.4028235E+38 với số dương.

String String

(Class) 8 0 đến khoảng 2 tỷ ký tự Unicode User-Defined

Type (kValueType) ế thừa từ Mtrịỗ theo kii thành phểu dầữn c liệu của Structure cĩ miủa thành phần. ền giá Khi khai báo một kiểu dữ liệu cơ bản, khơng hẳn biến sẽ sử dụng vùng nhớ như yêu cầu lưu trữ. Ví dụ, mảng cần thêm vùng nhớ cho chính bản thân mảng cũng như cho mỗi chiều (dimension). Mỗi biến Object tham chiếu đến một thành phần hoặc một kiểu hỗn hợp sử dụng 4 byte vùng nhớ ngồi số vùng nhớ cần dùng cho kiểu dữ liệu chứa trong nĩ.

I.2. Đặc đim ca các kiu d liu

Các kiểu dữ liệu mặc nhiên phát sinh từ lớp SysTem.Object.

Ngồi các phương thức kế thừa từ lớp SysTem.Oject, các biến kiểu dữ liệu cịn cĩ các phương thức và thuộc tính đặc thù.

Các phương thức chung kế thừa từ SysTem.Object

– Equals: Hổ trợ việc so sánh giữa hai object.

– Finalize: Thực hiện các thao tác xĩa bỏ trước khi object được tựđộng xĩa bỏ.

– GetHashCode: Phát sinh một số tương ứng với giá trị của object.

– GetType: Trả về kiểu của object.

– ToString: Tạo ra chuỗi chứa nội dung mơ tả một thể hiện của lớp. (adsbygoogle = window.adsbygoogle || []).push({});

Dưới đây là các bảng liệt kê những phương thức và thuộc tính đặc thù của các kiểu dữ liệu. Do các phương thức cĩ nhiều cách sử dụng khác nhau, nên trong các phần nĩi về phương thức chỉ mơ tả cơng dụng. Cần tham khảo thêm trong MSDN để hiểu rõ cách dùng.

I.2.1. Kiểu String

Thuộc tính

Tên Mơ tả

Chars(i) Trả về ký tự tại vị trí chỉ ra trong biến. Thuộc tính cĩ tính chỉđọc Length Trả về số ký tự trong biến.

Phương thức

Tên Mơ tả

Clone Trả về một tham chiếu của biến.

Compare Phương thức so sánh hai tham số kiểu String dựa vào thứ tự các ký tự theo ngơn ngữ qui định trong Regional Settings của từng ký tự và trả về:

– -1 khi chuỗi thứ 1 nhỏ hơn chuỗi thứ 2

– 0 khi chuỗi thứ 1 bằng chuỗi thứ 1

– 1 khi chuỗi thứ 1 lớn hơn chuỗi thứ 2

Ngồi ra cĩ thể cĩ tham số qui định cĩ phân biệt chữ Hoa chữ thường, v.v… CompareOrdinal So sánh hai tham số kiểu String dựa theo bảng mã các ký tự của các tham số.

Hàm trả về hiệu của mã tham số thứ nhất và mã tham số thứ hai. Concat Nối các tham số lại với nhau và trả về chuỗi nối.

Copy Tạo một thể hiện mới kiểu String cĩ giá trị như tham số chuỗi truyền vào.

CopyTo Sao chép một số ký tự chỉ ra từ một vị trí trên biến vào một vị trí chỉ ra trên mảng ký tự với số lượng ký tự truyền vào.

EndsWith Trả về True/False cho biết các ký tự cuối của biến cĩ khớp với chuỗi chỉ ra khơng. Format Thay thế phần biểu thức định dạng trong chuỗi bằng các các giá trị tương ứng đã

được định dạng theo biểu thức.

IndexOf Trả về vị trí đầu tiên tìm thấy chuỗi hoặc ký tự truyền vào trên biến, ; cĩ thể sử

dụng thêm vị trí bắt đầu tìm, trả về vị trí lần tìm thấy thứ mấy.

IndexOfAny Trả về vị trí tìm thấy đầu tiên trên biến bất kỳ ký tự nào trong mảng ký tự truyền vào; cĩ thể sử dụng thêm vị trí bắt đầu tìm, trả về vị trí lần tìm thấy thứ mấy. Insert Chèn vào một giá trị String truyền vào tại vị trí chỉđịnh trên biến.

Join Nối các phần tử của mảng String truyền vào thành một chuỗi duy nhất với dấu nối là chuỗi dấu ngăn cách chỉ ra (separator)

LastIndexOf Trả về vị trí tìm thấy cuối cùng trên biến, chuỗi hoặc ký tự truyền vào; cĩ thể sử

dụng thêm vị trí bắt đầu tìm, trả về vị trí lần tìm thấy thứ mấy.

LastIndexOfAny Trả về vị trí tìm thấy cuối cùng trên biến bất kỳ ký tự nào trong mảng ký tự truyền vào; cĩ thể sử dụng thêm vị trí bắt đầu tìm, trả về vị trí lần tìm thấy thứ mấy. PadLeft Nối thêm bên trái ký tự truyền vào với số lần sao cho độ dài tổng cộng bằng độ

dài chỉ ra. Nếu độ dài tổng cộng chỉ ra nhỏ hơn độ dài của biến, khơng ký tự nào

được thêm vào.

PadRight Nối thêm bên phải ký tự truyền vào với số lần sao cho độ dài tổng cộng bằng độ

dài chỉ ra. Nếu độ dài tổng cộng chỉ ra nhỏ hơn độ dài của biến, khơng ký tự nào

được thêm vào. (adsbygoogle = window.adsbygoogle || []).push({});

Replace Thay thế tất cả ký tự hay chuỗi tìm thấy trên biến bằng ký tự hay chuỗi truyền vào.

Split Trả về một mảng String với các phần tử chứa các chuỗi con được ngắt ra từ biến tùy theo ký tự ngăn cách truyền vào.

StartsWith Cho biết trị bắt đầu của biến cĩ khớp với chuỗi truyền vào. Substring Trả về một chuỗi con từ biến.

ToLower Trả về bản sao của biến với các ký tự in thường. ToUpper Trả về bản sao của biến với các ký tự in HOA.

Trim Trả về biến đã loại bỏ tất cả các ký tự từ đầu đến cuối của biến khớp với mảng ký tự truyền vào. TrimEnd Trả về biến đã loại bỏ tất cả các ký tự từ vị trí cuối của biến khớp với mảng ký tự truyền vào. TrimStart Trả về biến đã loại bỏ tất cả các ký tự từ vị trí đầu của biến khớp với mảng ký tự truyền vào. I.2.2. Kiểu DateTime Field Tên Mơ tả

MaxValue Hiển thị giá trị lớn nhất của kiểu DateTime (chỉđọc). MinValue Hiển thị giá trị nhỏ nhất của kiểu DateTime (chỉđọc).

Thuộc tính

Tên Mơ tả

Date Trả về giá trị ngày tháng năm của biến. Day Trả về giá trị ngày trong tháng của biến.

DayOfWeek Trả về giá trị ngày trong tuần của biến, với ngày đầu tiên là Chủ nhật cĩ giá trị là 0.

DayOfYear Trả về giá trị ngày trong năm của biến. Hour Trả về giá trị giờ của biến.

Millisecond Trả về giá trị phần ngàn giây của biến. Minute Trả về giá trị phút của biến.

Month Trả về tháng của biến.

Now Trả về giá trị ngày giờ hiện hành của hệ thống. Second Trả về giá trị giây của biến.

TimeOfDay Trả về giá trị giờ phút giây của biến. Today Trả về ngày hiện hành.

Phương thức

Tên Mơ tả

AddDays Thêm số ngày truyền vào cho giá trị của biến. AddHours Thêm số giờ truyền vào cho giá trị của biến.

AddMilliseconds Thêm số phần ngàn giây truyền vào cho giá trị của biến. AddMinutes Thêm số phút truyền vào cho giá trị của biến.

AddMonths Thêm số tháng truyền vào cho giá trị của biến. AddSeconds Thêm số giây truyền vào cho giá trị của biến. AddYears Thêm số năm truyền vào cho giá trị của biến.

Compare So sánh hai biến ngày giờ và cho biết biến nào lớn hơn. CompareTo So sánh biến với một tham số Object.

DaysInMonth Cho biết số ngày trong tháng theo tham số tháng, năm truyền vào.

IsLeapYear Cho biết giá trị năm truyền vào (dạng yyyy) cĩ phải là năm nhuận hay khơng. Subtract Trừ một giá trị thời gian khỏi biến.

ToLongDateString Chuyển giá trị biến ra định dạng Long Date. ToLongTimeString Chuyển giá trị biến ra định dạng Long Time. ToShortDateString Chuyển giá trị biến ra định dạng Short Date. ToShortTimeString Chuyển giá trị biến ra định dạng Short Time. ToString Trả về chuỗi trị của biến theo định dạng truyền vào

I.2.3. Kiểu Number:

Phần này nĩi chung cho các kiểu số Byte, Short, Integer, Long, Single, Double, Decimal

Field

Tên Mơ tả

MaxValue Hiển thị giá trị lớn nhất của kiểu (chỉđọc). MinValue Hiển thị giá trị nhỏ nhất của kiểu (chỉđọc).

Ngoại trừ kiểu String, các kiểu khác khi muốn chuyển sang kiểu chuỗi đều cĩ thể dùng phương thức ToString (kế thừa từ lớp Object) để chuyển đổi và định dạng cùng lúc. (adsbygoogle = window.adsbygoogle || []).push({});

Cú pháp sử dụng: ToString() ToString(<biểu thức định dạng>) Dưới đây là bảng biểu thức định dạng Biểu thức định dạng Biểu thức Ý nghĩa Ví dụ c, C Định dạng tiền tệ 12345.67 ToString(“C”) hiển thị $ 12,345.67 e, E Định dạng số khoa học. 12345.67 ToString(“E”) hiển thị 1.234567E+0004 f, F Định dạng cốđịnh 12345.67 ToString(“F”) hiển thị 12345.67 (với 2 số lẻ)

g, G Định dạng tổng quát 12345.67 ToString(“G”) hiển thị 12345.67 tùy theo gía trị

cĩ thể hiện thị dưới dạng E hoặc F

n, N Định dạng số 12345.67 ToString(“N”) hiển thị 12,345.67 p, P Định dạng phần trăm 0.45 ToString(“P”) hiển thị 45 %

x, X Định dạng Thập lục phân 250 ToString(“X”) hiển thị FA

Ngồi ra chúng ta cũng cĩ thể sử dụng các ký tự sau đây để lập biểu thức định dạng

Biểu thức định dạng tựđịnh nghĩa Biểu thức Ý nghĩa Ví dụ 0 Số khơng giữ chỗ 123 ToString(“0000”) hiển thị 0123 # Số bất kỳ giữ chỗ 123 ToString(“####”) hiển thị 123 . Dấu phần lẻ 123 ToString(“####.00”) hiển thị 123.00 , Dấu chia cụm ba số 12345 ToString(“#,###”) hiển thị 12,345 % Dấu phần trăm 0.45 ToString(“# %”) hiển thị 45 % E+0,E- 0,e+0, e-0 Dấu hiển thị số khoa học 12345678 ToString(“#.#######E+000”) hiển thị 1.2345678E+007 \ Ký tự literal 123456 ToString(“\# #,###”) hiển thị # 123,456 ; Ký tự ngăn cách vùng

Ký tự ngăn cách vùng Với ToString(“dương #,###;âm #,###; số khơng”) -123456 hiển thị âm 123,456

0 hiển thị số khơng

Một phần của tài liệu hướng dẫn sử dụng visual basic (Trang 35 - 40)