Mẫu chuỗi và chuỗi Kotlin (Có ví dụ)

Trong bài viết này, bạn sẽ tìm hiểu về chuỗi Kotlin, các mẫu chuỗi và một số thuộc tính và hàm chuỗi thường được sử dụng với sự trợ giúp của các ví dụ.

Chuỗi Kotlin

Chuỗi là một chuỗi các ký tự. Ví dụ, "Hello there!"là một chuỗi ký tự.

Trong Kotlin, tất cả các chuỗi đều là đối tượng của Stringlớp. Có nghĩa là, các ký tự chuỗi chẳng hạn như "Hello there!"được triển khai như các thể hiện của lớp này.

Làm thế nào để tạo một biến Chuỗi?

Đây là cách bạn có thể xác định một Stringbiến trong Kotlin. Ví dụ,

 val myString = "Xin chào!"

Ở đây, myString là một biến kiểu String.

Bạn có thể khai báo biến kiểu Stringvà chỉ định kiểu của nó trong một câu lệnh, và khởi tạo biến trong một câu lệnh khác sau này trong chương trình.

 val myString: String… myString = "Chào bạn"

Làm thế nào để truy cập các ký tự của một chuỗi?

Để truy cập các phần tử (ký tự) của một chuỗi, toán tử truy cập chỉ mục được sử dụng. Ví dụ,

val myString = "Xin chào!" val item = myString (2)

Ở đây, biến item chứa y, ký tự thứ ba của chuỗi myString. Đó là bởi vì lập chỉ mục trong Kotlin bắt đầu từ 0 chứ không phải 1.

val myString = "Xin chào!" var item: Char item = myString (0) // item chứa 'H' item = myString (9) // item chứa '!' item = myString (10) // Lỗi! Chỉ mục chuỗi nằm ngoài phạm vi item = myString (-1) // Lỗi! Chỉ mục chuỗi nằm ngoài phạm vi

Ví dụ: Lặp lại qua một chuỗi

Nếu bạn cần lặp qua các phần tử của chuỗi, bạn có thể thực hiện dễ dàng bằng cách sử dụng vòng lặp for.

 fun main(args: Array) ( val myString = "Hey!" for (item in myString) ( println(item) ) )

Khi bạn chạy chương trình, đầu ra sẽ là:

 H e y ! 

Các chuỗi trong Kotlin là bất biến

Giống như Java, các chuỗi là bất biến trong Kotlin. Điều này có nghĩa là, bạn không thể thay đổi từng ký tự của một chuỗi. Ví dụ,

var myString = "Này!" myString (0) = 'h' // Lỗi! Dây

Tuy nhiên, bạn có thể gán lại một biến chuỗi nếu bạn đã khai báo biến bằng từ khóa var. ( Đề xuất Đọc : Kotlin var Vs val)

Ví dụ: Gán lại một biến chuỗi.

 fun main(args: Array) ( var myString = "Hey!" println("myString = $myString") myString = "Hello!" println("myString = $myString") )

Khi bạn chạy chương trình, đầu ra sẽ là:

myString = Này! myString = Xin chào!

Chuỗi chữ

Một nghĩa đen là biểu diễn mã nguồn của một giá trị cố định. Ví dụ: "Hey there!"là một chuỗi ký tự xuất hiện trực tiếp trong một chương trình mà không yêu cầu tính toán (như các biến).

Có hai loại chuỗi ký tự trong Kotlin:

1. Chuỗi đã thoát

Một chuỗi thoát có thể có các ký tự thoát trong chúng. Ví dụ,

 val myString = "Xin chào! n" 

Đây là một ký tự thoát chèn một dòng mới trong văn bản nơi nó xuất hiện.

Dưới đây là danh sách các ký tự thoát được hỗ trợ trong Kotlin:

  • - Tab chèn
  •  - Chèn backspace
  • - Chèn dòng mới
  • - Chèn dấu xuống dòng
  • \' - Chèn ký tự trích dẫn đơn
  • " - Chèn ký tự dấu ngoặc kép
  • \ - Chèn dấu gạch chéo ngược
  • $ - Chèn ký tự đô la

2. Chuỗi thô

Một chuỗi thô có thể chứa các dòng mới (không phải ký tự thoát dòng mới) và văn bản tùy ý. Một chuỗi thô được phân tách bằng dấu ngoặc kép """. Ví dụ,

 fun main(args: Array) ( val myString = """ for (character in "Hey!") println(character) """ print(myString) )

Khi bạn chạy chương trình, đầu ra sẽ là:

 for (ký tự trong "Này!") println (ký tự)

Bạn có thể loại bỏ các khoảng trắng ở đầu của một chuỗi thô bằng cách sử dụng hàm trimMargin (). Ví dụ,

Ví dụ: In chuỗi thô

 fun main(args: Array) ( println("Output without using trimMargin function:") val myString = """ |Kotlin is interesting. |Kotlin is sponsored and developed by JetBrains. """ println(myString) println("Output using trimMargin function:") println(myString.trimMargin()) ) 

Khi bạn chạy chương trình, đầu ra sẽ là:

Đầu ra mà không cần sử dụng hàm trimMargin: | Kotlin rất thú vị. | Kotlin được tài trợ và phát triển bởi JetBrains. Đầu ra bằng hàm trimMargin: Kotlin rất thú vị. Kotlin được tài trợ và phát triển bởi JetBrains.

Theo mặc định, trimMargin()hàm sử dụng | làm tiền tố ký quỹ. Tuy nhiên, bạn có thể thay đổi nó bằng cách chuyển một chuỗi mới cho hàm này.

Ví dụ: trimMargin () với Đối số

 fun main(args: Array) ( val myString = """ !!! Kotlin is interesting. !!! Kotlin is sponsored and developed by JetBrains. """ println(myString.trimMargin("!!! ")) )

Khi bạn chạy chương trình, đầu ra sẽ là:

Kotlin thật thú vị. Kotlin được tài trợ và phát triển bởi JetBrains.

Kotlin String Templates

Kotlin has an awesome feature called string templates that allows strings to contain template expressions.

A string template expression starts with a dollar sign $. Here are few examples:

Example: Kotlin String Template

 fun main(args: Array) ( val myInt = 5; val myString = "myInt = $myInt" println(myString) )

When you run the program, the output will be:

 myInt = 5

It is because the expression $myInt (expression starting with $ sign) inside the string is evaluated and concatenated into the string.

Example: String Template With Raw String

 fun main(args: Array) ( val a = 5 val b = 6 val myString = """ |$(if (a> b) a else b) """ println("Larger number is: $(myString.trimMargin())") )

When you run the program, the output will be:

 Larger number is: 6 

Few String Properties and Functions

Since literals in Kotlin are implemented as instances of String class, you can use several methods and properties of this class.

  • length property - returns the length of character sequence of an string.
  • compareTo function - compares this String (object) with the specified object. Returns 0 if the object is equal to the specfied object.
  • get function - returns character at the specified index.
    You can use index access operator instead of get function as index access operator internally calls get function.
  • plus function - returns a new string which is obtained by the concatenation of this string and the string passed to this function.
    You can use + operator instead of plus function as + operator calls plus function under the hood.
  • subSequence Function - returns a new character sequence starting at the specified start and end index.

Example: String Properties and Function

 fun main(args: Array) ( val s1 = "Hey there!" val s2 = "Hey there!" var result: String println("Length of s1 string is $(s1.length).") result = if (s1.compareTo(s2) == 0) "equal" else "not equal" println("Strings s1 and s2 are $result.") // s1.get(2) is equivalent to s1(2) println("Third character is $(s1.get(2)).") result = s1.plus(" How are you?") // result = s1 + " How are you?" println("result = $result") println("Substring is "$(s1.subSequence(4, 7)) "") )

When you run the program, the output is:

Độ dài của xâu s1 là 10. Các xâu s1 và s2 bằng nhau. Nhân vật thứ ba là y. result = Này! Bạn khỏe không? Chuỗi con là "the"

Truy cập lớp Kotlin String để biết thêm thông tin về các thuộc tính của phần mở rộng, phần mở rộng, các hàm và hàm tạo.

thú vị bài viết...