Swift 字典中Int的随机值,而不是零
我有一个Swift 字典中Int的随机值,而不是零,swift,struct,int,Swift,Struct,Int,我有一个Avatarstruct。此结构具有称为元素的属性,这些元素包含面部的多个部分,如眼睛,嘴等等。在init(withGender:AvatarGender)方法中。我希望所有这些元素的默认值都为零 但是我没有得到零,而是得到了巨大的随机整数。我不明白为什么 struct Avatar { var gender: AvatarGender var skin: AvatarSkinColor var elements: [AvatarElement: Int]
Avatar
struct。此结构具有称为元素的属性,这些元素包含面部的多个部分,如眼睛
,嘴
等等。在init(withGender:AvatarGender)
方法中。我希望所有这些元素的默认值都为零
但是我没有得到零,而是得到了巨大的随机整数。我不明白为什么
struct Avatar {
var gender: AvatarGender
var skin: AvatarSkinColor
var elements: [AvatarElement: Int]
var rawString: String {
// a computed property
}
init(withGender: AvatarGender) {
gender = withGender
skin = .White
elements = [AvatarElement: Int]()
var allElementsType = [AvatarElement]()
if gender == .Man {
allElementsType = AvatarElement.allMaleValues
} else if gender == .Woman {
allElementsType = AvatarElement.allFemaleValues
}
for element in allElementsType {
elements[element] = 0 // <= This doesn't work !!!
}
}
init(fromRawString: String) {
// Another init method that works properly
}
}
struct化身{
性别:阿凡达
var皮肤:AvatarSkinColor
变量元素:[关联:Int]
var-rawString:String{
//计算属性
}
初始化(带性别:AvatarGender){
性别=有性别
皮肤=白色
元素=[AvataRelation:Int]()
var等位基因类型=[AvataRelation]()
如果性别=男性{
等位基因类型=AvataRelation.allMaleValues
}否则,如果性别==。女性{
等位基因类型=AvataRelation.allFemaleValues
}
对于等位基因类型中的元素{
elements[element]=0//代码似乎是正确的。您是如何测试它的?您能否提供一个显示“巨大随机整数”的屏幕截图?是什么让您认为它不起作用。您是否碰巧在调试器中看到了这一点?代码似乎是正确的。您是如何测试它的?您能否提供一个显示“巨大随机整数”的屏幕截图?是什么让您认为它不起作用。您是否碰巧在调试器中查看了它?