Ios 如何在Swift中创建空数组?
我真的对我们在Swift中创建数组的方式感到困惑。您能告诉我有多少种方法可以创建一个带有一些细节的空数组吗?在swift中创建/初始化数组有两种主要方法Ios 如何在Swift中创建空数组?,ios,arrays,swift,Ios,Arrays,Swift,我真的对我们在Swift中创建数组的方式感到困惑。您能告诉我有多少种方法可以创建一个带有一些细节的空数组吗?在swift中创建/初始化数组有两种主要方法 var myArray = [Double]() 这将创建一个双精度数组 var myDoubles = [Double](count: 5, repeatedValue: 2.0) 这将创建一个包含5个double的数组,所有数组都以2.0的值初始化 var myArr1 = [AnyObject]() 可以存储任何对象 var myA
var myArray = [Double]()
这将创建一个双精度数组
var myDoubles = [Double](count: 5, repeatedValue: 2.0)
这将创建一个包含5个double的数组,所有数组都以2.0的值初始化
var myArr1 = [AnyObject]()
可以存储任何对象
var myArr2 = [String]()
只能存储字符串,请执行以下操作:
var yourArray = [String]()
上述方法也适用于其他类型,而不仅仅是字符串。这只是一个例子
为其添加值
我想你最终会想给它增值的
yourArray.append("String Value")
或
通过插入添加
一旦有了几个值,就可以插入新值而不是追加。例如,如果要在数组的开头插入新对象(而不是将其追加到末尾):
也可以使用变量使插入更灵活:
let lineCutter = "I'm going to be first soon."
let positionToInsertAt = 0
yourArray.insert(lineCutter, atIndex: positionToInsertAt)
您可能最终想要删除一些内容
var yourOtherArray = ["MonkeysRule", "RemoveMe", "SwiftRules"]
yourOtherArray.remove(at: 1)
当您知道值在数组中的位置时(即,当您知道其索引值时),上述方法非常有效。由于索引值从0开始,第二个条目将位于索引1
在不知道索引的情况下删除值
但是如果你没有呢?如果您的OtherArray有数百个值,您只知道要删除一个等于“RemoveMe”的值,该怎么办
这应该让你开始 您可以使用
var firstNames: [String] = []
swift中的数组写为**数组<元素>**,其中元素是允许数组存储的值的类型 数组可以初始化为:
让emptyArray=[String]()
它显示它是字符串类型的数组
emptyArray变量的类型根据初始值设定项的类型推断为[String]
用于创建包含元素的字符串类型数组
var groceryList:[String]=[“鸡蛋”、“牛奶”]
groceryList已用两项初始化
groceryList变量声明为“字符串值数组”,写为[string]。
此特定数组已指定字符串的值类型,它仅允许存储字符串值
数组有多种属性,如:
groceryList.append("Flour")
-检查数组是否有元素(数组是否为空)
isEmpty属性(布尔值),用于检查count属性是否等于0:
if groceryList.isEmpty {
print("The groceryList list is empty.")
} else {
print("The groceryList is not empty.")
}
-在数组中追加(添加)元素
您可以通过调用数组的append(:)方法将新项添加到数组的末尾:
groceryList.append("Flour")
groceryList现在包含3项
或者,使用加法赋值运算符(+=)附加一个或多个兼容项的数组:
groceryList现在包含4项
groceryList += ["Chocolate Spread", "Cheese", "Peanut Butter"]
groceryList现在包含7项您可以通过传递数组索引来删除数组内容,也可以删除所有内容
var array = [String]()
print(array)
array.append("MY NAME")
print(array)
array.removeFirst()
print(array)
array.append("MY NAME")
array.removeLast()
array.append("MY NAME1")
array.append("MY NAME2")
print(array)
array.removeAll()
print(array)
Swift 5
// Create an empty array
var emptyArray = [String]()
// Add values to array by appending (Adds values as the last element)
emptyArray.append("Apple")
emptyArray.append("Oppo")
// Add values to array by inserting (Adds to a specified position of the list)
emptyArray.insert("Samsung", at: 0)
// Remove elements from an array by index number
emptyArray.remove(at: 2)
// Remove elements by specifying the element
if let removeElement = emptyArray.firstIndex(of: "Samsung") {
emptyArray.remove(at: removeElement)
}
有三(3)种方法可以用Swift和速记语法创建空数组,首选方法
方法1:速记语法
var arr = [Int]()
方法2:数组初始值设定项
var arr = Array<Int>()
方法4:积分归@BallpointBen
var arr:Array<Int> = []
var-arr:Array=[]
以下是Swift 4中的一些常见任务,您可以将其用作参考,直到习惯为止
let emptyArray = [String]()
let emptyDouble: [Double] = []
let preLoadArray = Array(repeating: 0, count: 10) // initializes array with 10 default values of the number 0
let arrayMix = [1, "two", 3] as [Any]
var arrayNum = [1, 2, 3]
var array = ["1", "two", "3"]
array[1] = "2"
array.append("4")
array += ["5", "6"]
array.insert("0", at: 0)
array[0] = "Zero"
array.insert(contentsOf: ["-3", "-2", "-1"], at: 0)
array.remove(at: 0)
array.removeLast()
array = ["Replaces all indexes with this"]
array.removeAll()
for item in arrayMix {
print(item)
}
for (index, element) in array.enumerated() {
print(index)
print(element)
}
for (index, _) in arrayNum.enumerated().reversed() {
arrayNum.remove(at: index)
}
let words = "these words will be objects in an array".components(separatedBy: " ")
print(words[1])
var names = ["Jemima", "Peter", "David", "Kelly", "Isabella", "Adam"]
names.sort() // sorts names in alphabetical order
let nums = [1, 1234, 12, 123, 0, 999]
print(nums.sorted()) // sorts numbers from lowest to highest
使用预定义计数启动阵列:
数组(重复:0,计数:10)
我经常在需要指定数量的模拟对象的映射语句中使用它。比如说,
让myObjects:[MyObject]=数组(重复:0,计数:10)。映射{uu返回MyObject()}
如果要声明字符串类型的空数组,可以用5种不同的方式:-
var myArray: Array<String> = Array()
var myArray = [String]()
var myArray: [String] = []
var myArray = Array<String>()
var myArray:Array<String> = []
var myArray:Array=Array()
var myArray=[String]()
var myArray:[字符串]=[]
var myArray=Array()
var myArray:Array=[]
任何类型的数组:-
var myArray: Array<AnyObject> = Array()
var myArray = [AnyObject]()
var myArray: [AnyObject] = []
var myArray = Array<AnyObject>()
var myArray:Array<AnyObject> = []
var myArray:Array=Array()
var myArray=[AnyObject]()
var myArray:[AnyObject]=[]
var myArray=Array()
var myArray:Array=[]
整数类型的数组:-
var myArray: Array<Int> = Array()
var myArray = [Int]()
var myArray: [Int] = []
var myArray = Array<Int>()
var myArray:Array<Int> = []
var myArray:Array=Array()
var myArray=[Int]()
var myArray:[Int]=[]
var myArray=Array()
var myArray:Array=[]
Swift 5
// Create an empty array
var emptyArray = [String]()
// Add values to array by appending (Adds values as the last element)
emptyArray.append("Apple")
emptyArray.append("Oppo")
// Add values to array by inserting (Adds to a specified position of the list)
emptyArray.insert("Samsung", at: 0)
// Remove elements from an array by index number
emptyArray.remove(at: 2)
// Remove elements by specifying the element
if let removeElement = emptyArray.firstIndex(of: "Samsung") {
emptyArray.remove(at: removeElement)
}
给出了类似的答案,但这不适用于最新版本的Swift(Swift 5),因此这里是更新的答案。希望有帮助!:) 与:Xcode 6.0.1兼容+ 通过在声明中指定数组的元素类型,可以创建空数组 例如:
// Shortened forms are preferred
var emptyDoubles: [Double] = []
// The full type name is also allowed
var emptyFloats: Array<Float> = Array()
//首选缩写形式
var emptyDoubles:[Double]=[]
//还允许使用完整的类型名
var emptyFloats:Array=Array()
希望这能帮助任何无意中进入本页面的人。根据Swift 5
//一个“Int”元素数组
让oddNumbers=[1,3,5,7,9,11,13,15]
//“字符串”元素的数组
let streets=[“Albemarle”、“Brandywine”、“Chesapeake”]
//缩写形式是首选
var emptyDoubles:[Double]=[]
//还允许使用完整的类型名
var emptyFloats:Array=Array()
var-myArray:[String]=[]您应该阅读这篇文章,如果我想在数组中存储任何类型的对象,我该怎么办?var-myArray:[AnyObject]=[]谢谢,我可以这样声明`var-myArray=[AnyObject]()`?是的,这将生成一个“AnyObject”数组,允许您在其中放置几乎任何东西。除非您需要这样的数组,否则最好给它一个特定的值,如“var myArray=[String]()”。注意Swift 4将使用重复值初始化数组的语法更改为:var myDoubles=[Double](重复:2.0,计数:5)
-注意参数顺序的变化和repeatedV标签的变化
var myArray: Array<Int> = Array()
var myArray = [Int]()
var myArray: [Int] = []
var myArray = Array<Int>()
var myArray:Array<Int> = []
// Create an empty array
var emptyArray = [String]()
// Add values to array by appending (Adds values as the last element)
emptyArray.append("Apple")
emptyArray.append("Oppo")
// Add values to array by inserting (Adds to a specified position of the list)
emptyArray.insert("Samsung", at: 0)
// Remove elements from an array by index number
emptyArray.remove(at: 2)
// Remove elements by specifying the element
if let removeElement = emptyArray.firstIndex(of: "Samsung") {
emptyArray.remove(at: removeElement)
}
// Shortened forms are preferred
var emptyDoubles: [Double] = []
// The full type name is also allowed
var emptyFloats: Array<Float> = Array()