새롭게 배운 꿀팁/정보 2탄!
@IBAction func rollButtonPressed(_ sender: UIButton) {
let diceArray = [#imageLiteral(resourceName: "DiceOne"),
#imageLiteral(resourceName: "DiceTwo"),
#imageLiteral(resourceName: "DiceThree"),
#imageLiteral(resourceName: "DiceFour"),
#imageLiteral(resourceName: "DiceFive"),
#imageLiteral(resourceName: "DiceSix")]
diceImageView1.image = diceArray.randomElement() //아래의 랜덤 방식과 같은 메서드
diceImageView2.image = diceArray[Int.random(in: 1...5)]
}
}
위에 코드를 확인해 보면, diceImageView1 과 diceImageView2 둘 다 diceArray를 사용한다.
그럼으로 원래 각각에 배열이 직접 들어가 있었다면, 위에 변수를 생성해 코드를 refactoring 할 수 있다.
//randomization의 여러 방법
Int(in: 1...3)
Float(in:1...3) //2.912319
array.randomElement() //array에서 램덤으로 추출
array.shuffle() //array 안에 있는 값들이 셔플되면서 자리를 바꿈
Bool.random() // true or false