Swift程式:將字串轉換為陣列
本教程將討論如何編寫Swift程式將字串轉換為陣列。
字串是有序的字元集合。例如 - “TutorialsPoint”、“Pinky”等。要建立字串型別變數,我們使用String關鍵字。
var str : String
陣列是相似資料型別的集合。例如,任何整數陣列只能包含整數值,它不接受字串值。
var arr = [Int]
要將字串轉換為陣列,我們可以使用以下任何一種方法。
以下是演示:
輸入
假設我們的給定輸入是:
Value = “true”
輸出
期望輸出為:
Array = [“t”, “r”, “u”, “e”]
方法1 - 使用components(separatedBy:)函式
要將字串轉換為陣列,我們可以使用內建的components(separatedBy:)方法。此方法使用指定的字串分隔符將字串分割成子字串。或者換句話說,此函式返回給定字串的子字串陣列,這些子字串由給定的分隔符分隔。
語法
以下是語法:
mystr. components(separatedBy:sep)
此處sep引數用於分隔給定字串的子字串。其值可以是字元或字串。
示例
以下程式演示如何將字串轉換為陣列。
import Foundation
import Glibc
// String 1
var myStr1 : String = "Today is the nice day for fishing"
print("Original String 1: ", myStr1)
// Array
var myArr1 = myStr1.components(separatedBy: " ")
print("Array of myStr1:", myArr1)
// String 2
var myStr2 : String = "I-Like-ChamCham"
print("Original String 2: ", myStr2)
// Array
var myArr2 = myStr2.components(separatedBy: "-")
print("Array of myStr2:", myArr2)
輸出
Original String 1: Today is the nice day for fishing Array of myStr1: ["Today", "is", "the", "nice", "day", "for", "fishing"] Original String 2: I-Like-ChamCham Array of myStr2: ["I", "Like", "ChamCham"]
在上面的程式碼中,我們有兩個不同的字串:
var myStr1 : String = "Today is the nice day for fishing" var myStr2 : String = "I-Like-ChamCham"
現在我們使用components(separatedBy:)方法將它們轉換為陣列:
var myArr1 = myStr1.components(separatedBy: " “) var myArr2 = myStr2.components(separatedBy: "-")
因此我們得到以下陣列:
Array of myStr1: ["Today", "is", "the", "nice", "day", "for", "fishing"] Array of myStr2: ["I", "Like", "ChamCham"]
方法2 - 使用Array()初始化器
我們還可以使用Array()初始化器將字串轉換為陣列。它將給定字串拆分為單個字元的陣列。
語法
以下是語法:
Array(Value)
示例
以下程式演示如何將字串轉換為陣列。
import Foundation
import Glibc
// String 1
var myStr1 : String = "Today is-nice"
print("Original String 1: ", myStr1)
// Array
var myArr1 = Array(myStr1)
print("Array of myStr1:", myArr1)
// String 2
var myStr2 : String = "ChamCham"
print("Original String 2: ", myStr2)
// Array
var myArr2 = Array(myStr2)
print("Array of myStr2:", myArr2)
輸出
Original String 1: Today is-nice Array of myStr1: ["T", "o", "d", "a", "y", " ", "i", "s", "-", "n", "i", "c", "e"] Original String 2: ChamCham Array of myStr2: ["C", "h", "a", "m", "C", "h", "a", “m"]
在上面的程式碼中,我們使用Array()初始化器將兩個字串轉換為陣列,我們得到以下輸出:
Array of myStr1: ["T", "o", "d", "a", "y", " ", "i", "s", "-", "n", "i", "c", "e"] Array of myStr2: ["C", "h", "a", "m", "C", "h", "a", “m"]
在這裡,您可以看到Array()將所有內容(包括字母、空格和特殊字元)轉換為字元陣列。
方法3 - 使用map()函式
我們還可以使用map()函式將字串轉換為陣列。它迭代字串中的每個字元。或者我們可以說此方法返回一個數組,該陣列包含將指定的閉包對映到序列項的結果。
語法
以下是語法:
String.map{String($0)}
這裡map()用於迭代字串中的每個字元,而$0用於將每個字元轉換為字串。
示例
以下程式演示如何將字串轉換為陣列。
import Foundation
import Glibc
// String 1
var myStr1 : String = "Today is-nice"
print("Original String 1: ", myStr1)
// Array
var myArr1 = myStr1.map{String($0)}
print("Array of myStr1:", myArr1)
// String 2
var myStr2 : String = "ChamCham"
print("Original String 2: ", myStr2)
// Array
var myArr2 = myStr2.map{String($0)}
print("Array of myStr2:", myArr2)
輸出
Original String 1: Today is-nice Array of myStr1: ["T", "o", "d", "a", "y", " ", "i", "s", "-", "n", "i", "c", "e"] Original String 2: ChamCham Array of myStr2: ["C", "h", "a", "m", "C", "h", "a", “m"]
方法4 - 使用for迴圈
我們還可以藉助for迴圈將字串轉換為陣列。在這裡,我們使用for迴圈遍歷字串的每個字元,然後使用append()函式將字元新增到陣列中。
示例
以下程式演示如何將字串轉換為陣列。
import Foundation
import Glibc
// String 1
var myStr : String = "Today is-nice"
print("Original String:", myStr)
// Array
var myArr = [Character]()
// Converting string into array using for loop
for c in myStr{
myArr.append(c)
}
print("Array:", myArr)
輸出
Original String: Today is-nice Array: ["T", "o", "d", "a", "y", " ", "i", "s", "-", "n", "i", "c", "e"]
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP