Cùng khám phá bộ thư viện chuẩn Kotlin 1.5

Bài viết này chia sẻ về một số thay đổi của thư viện chuẩn Kotlin ở phiên bản 1.5, nếu mọi người thấy thiếu sót có thể comment phía dưới nhé . Còn bây giờ thì bắt đầu thôi. 1. Các hàm mới của collection Giả sử bạn có một danh sách các đối tượng,

Bài viết này chia sẻ về một số thay đổi của thư viện chuẩn Kotlin ở phiên bản 1.5, nếu mọi người thấy thiếu sót có thể comment phía dưới nhé 😅. Còn bây giờ thì bắt đầu thôi.

1. Các hàm mới của collection

  • Giả sử bạn có một danh sách các đối tượng, tất cả đều có thuộc tính là nullable và bạn muốn nhận giá trị không phải null đầu tiên của thuộc tính đó trong collection. Thông thường, đầu tiên chúng ta sẽ sử dụng mapNotNull() để lấy ra một collection tất cả các giá trị không null và sau đó gọi firstOrNull() để lấy giá trị cuối cùng.

  • Trong Kotlin 1.5, chúng ta có các hàm như: firstNotNullOf() và firstNotNullOfOrNull().

    • Hàm firstNotNullOf() trả về giá trị không phải null đầu tiên của collection.
    • Hàm firstNotNullOfOrNull() trả về giá trị không phải null đầu tiên của collection hoặc trả về null nếu không có phần tử nào phù hợp.
  • Hàm firstNotNullOf() là sự kết hợp của mapNotNull() và first(). Tương tự firstNotNullOfOrNull() là sự kết hợp của mapNotNull() và firstOrNull().

2. Các loại số nguyên Unsigned : UByte, UShort, UInt, ULong

  • Các loại số unsigned này hữu ích khi bạn muốn giới hạn một loại chỉ chứa các giá trị không âm. Chúng có thể trực quan hơn khi chúng ta làm việc ở mức bit và byte, thao tác với pixel trong bitmap, byte trong tệp hoặc dữ liệu nhị phân khác
    • UByte: 1 số nguyên unsigned 8-bit, nằm trong khoảng từ 0 – 255.
    • UShort: 1 số nguyên unsigned 16-bit, nằm trong khoảng từ 0 – 65535
    • UInt: 1 số nguyên unsigned 32-bit, nằm trong khoảng từ 0 – 2^32 – 1
    • ULong: 1 số nguyên 64-bit, nằm trong khoảng từ 0 – 2^64-1

3. Chia lấy nguyên và toán tử mod

  • Hàm floorDiv() giúp chúng ta có thể chia 2 số và lấy phần nguyên của chúng.
  • Hàm mod trả về số dư sau khi chia một số cho ước số. Hàm này khác với toán tử “%”, được gọi là “rem” trong Kotlin.
  • Ở đây toán tử “%” trả về -1. Nhưng a.mod(b) là sự khác biệt giữa a và a.floorDiv(b) * b. Nó bằng 0 hoặc có cùng dấu với b, trong khi a%b có thể có một dấu khác.

4. API chuyển đổi kí tự thành số nguyên

  • Đối với các ký tự riêng lẻ, Kotlin đã giới thiệu các chức năng giúp chuyển đổi chúng thành số. Kotlin giới thiệu cách chuyển đổi các kí tự thành các nhóm chức năng sau đây:

    Các hàm lấy mã số nguyên của kí tự và tạo kí tự từ mã đã cho

    Các hàm chuyển kí tự thành giá trị số của số mà nó đại diện

    Một hàm mở rộng cho kiểu số nguyên để chuyển đổi chữ số đơn không âm mà nó biểu thị thành kí tự tương ứng

5. Các hàm chuyển đổi String/Char

  • Kotlin 1.5 giới thiệu một locale-agnostic API cho chuyển đổi văn bản chữ hoa/ chữ thường. Locale-agnostic nghĩa là bất kể cài đặt ngôn ngữ nào trên thiết bị, bạn sẽ nhận được kết quả chuyển đổi nhất quán. Vì vậy, nó giúp bạn tránh các lỗi do cài đặt ngôn ngữ khác nhau.

    Các hàm chuyển đổi chuỗi

    Các hàm chuyển đổi kí tự

    Nếu bạn muốn chuyển đổi dựa trên ngôn ngữ, bạn cần chỉ định rõ ràng ngôn ngữ như bên dưới

Kết bài

Nguồn: viblo.asia

Bài viết liên quan

WebP là gì? Hướng dẫn cách để chuyển hình ảnh jpg, png qua webp

WebP là gì? WebP là một định dạng ảnh hiện đại, được phát triển bởi Google

Điểm khác biệt giữa IPv4 và IPv6 là gì?

IPv4 và IPv6 là hai phiên bản của hệ thống địa chỉ Giao thức Internet (IP). IP l

Check nameservers của tên miền xem website trỏ đúng chưa

Tìm hiểu cách check nameservers của tên miền để xác định tên miền đó đang dùn

Mình đang dùng Google Domains để check tên miền hàng ngày

Từ khi thông báo dịch vụ Google Domains bỏ mác Beta, mình mới để ý và bắt đầ