Elm - Loại dữ liệu
Hệ thống Loại biểu thị các loại giá trị khác nhau được ngôn ngữ hỗ trợ. Hệ thống Loại kiểm tra tính hợp lệ của các giá trị được cung cấp, trước khi chúng được chương trình lưu trữ hoặc thao tác. Điều này đảm bảo rằng mã hoạt động như mong đợi. Hệ thống Loại cũng cho phép gợi ý mã phong phú hơn và tài liệu tự động.
Elm là một ngôn ngữ được gõ tĩnh. Elm có các loại tương tự như từ các ngôn ngữ khác.
Con số
Các số kiểu dữ liệu đại diện cho các giá trị số. Hệ thống kiểu Elm hỗ trợ các kiểu số sau:
Sr không. | Kiểu | Thí dụ |
---|---|---|
1 | số - Lưu trữ bất kỳ số nào | 7 là loại số |
2 | Float - Lưu trữ giá trị phân số | 7/2 cho kết quả 3,5 là Float |
3 | Int - Lưu trữ các giá trị phi phân số | 7 // 2 cho kết quả 3 là Int |
Loại số chứa cả hai giá trị phân đoạn và không phân đoạn. Mở REPL của cây du và thử các ví dụ dưới đây:
C:\Users\admin>elm repl
---- elm-repl 0.18.0
---------------------------------------------
--------------
:help for help, :exit to exit, more at <https://github.com/elm-lang/elm-repl>
------------------------------------------
--------------------------------------
> 7
7 : number
> 7/2
3.5 : Float
> 7//2
3 : Int
>
Chuỗi và Char
Kiểu dữ liệu Chuỗi được sử dụng để biểu diễn một chuỗi ký tự. Kiểu dữ liệu Char được sử dụng để đại diện cho một ký tự. Giá trị chuỗi được xác định trong một dấu ngoặc kép "và các giá trị Char nằm trong một dấu ngoặc kép" .
Sr không. | Kiểu | Thí dụ |
---|---|---|
1 | Chuỗi - Lưu trữ một chuỗi ký tự | "TutorialsPoint" |
2 | Char - Lưu trữ giá trị phân số | 'T' |
Mở REPL của cây du và thử các ví dụ dưới đây:
C:\Users\admin>elm repl
---- elm-repl 0.18.0 ---------------------------------------
--------------------
:help for help, :exit to exit, more at <https://github.com/elm-lang/elm-repl>
--------------------------------------
------------------------------------------
> "TutorialsPoint"
"TutorialsPoint" : String
> 'T'
'T' : Char
Bool
Kiểu dữ liệu Bool trong Elm chỉ hỗ trợ hai giá trị - Đúng và Sai. Từ khóa Bool được sử dụng để biểu thị giá trị Boolean.
Sr không. | Kiểu | Thí dụ |
---|---|---|
1 | Bool - Lưu trữ giá trị Đúng hoặc Sai | 1 == 1 trả về True |
Mở REPL của cây du và thử các ví dụ dưới đây:
C:\Users\dell\elm>elm repl
---- elm-repl 0.18.0 -----------------------------------
------------------------
:help for help, :exit to exit, more at <https://github.com/elm-lang/elm-repl>
----------------------------------------
----------------------------------------
> True
True : Bool
> False
False : Bool
> 1==1
True : Bool
> 1==2
False : Bool
> 1 /= 2 -- not equal
True : Bool
> not True
False : Bool
> not False
True : Bool
Các loại tùy chỉnh
Elm hỗ trợ tạo các kiểu do người dùng xác định. Ví dụ, hãy xem xét một ứng dụng thanh toán. Ứng dụng cần lưu trữ các phương thức thanh toán khác nhau - thẻ tín dụng, thẻ ghi nợ và ngân hàng trực tuyến. Điều này có thể đạt được bằng cách xác định một loại tùy chỉnh và giới hạn giá trị của nó ở ba phương thức thanh toán được chấp nhận.
Ví dụ sau đây cho thấy cách tạo một loại tùy chỉnh.
> type PaymentMode = CreditCard|NetBanking|DebitCard
> payment1 = CreditCard
CreditCard : Repl.PaymentMode
> payment2 = DebitCard
DebitCard : Repl.PaymentMode
> payment3 = UPI
-- NAMING ERROR ---------------------------------------------- repl-temp-000.elm
Cannot find variable `UPI`
7| payment3 = UPI
Trong ví dụ trên, chúng tôi đã tạo loại tùy chỉnh PaymentMode. Các biến Payment1 và Payment2 được gán cho các giá trị PaymentMode. Nếu giá trị được gán cho biến không khớp với bất kỳ giá trị nào được xác định bởi loại PaymentMode, ứng dụng sẽ tạo ra lỗi cú pháp.
Các loại dữ liệu có cấu trúc
Các kiểu dữ liệu có cấu trúc có thể được sử dụng để lưu trữ nhiều giá trị trong một định dạng có cấu trúc. Elm hỗ trợ các kiểu dữ liệu có cấu trúc sau:
- Tuple
- List
- Record
- Record
Những điều này sẽ được thảo luận chi tiết trong các chương sắp tới.