Swift - 물음표 & 느낌표

1717 단어 swift
1. 값을 부여해야 하는 변수 또는 일반 변수
var month:Int
println("month:\(month)")

위의 두 마디 코드는 값을 부여하지 않았기 때문에 잘못 알릴 수 있습니다
2.다음 표기법을 다시 보자
var month:Int?
println("month:\(month)")

인쇄된 값은 다음과 같습니다. month:nil
즉 자바에 있는 null
3. 이 코드를 다시 보자
var month:Int!
println("month:\(month)")

출력은 2와 같다
4. 요약 1
물음표와 느낌표는 모두 변수를 선택 변수나 공백 변수로 표시할 수 있다
5. 물음표와 느낌표의 차이
var year:Int = 2014;

var month:Int?
println("month:\(month)")

year = month

출력:month:nil
          fatal error: Can't unwrap Optional.None
.....
 
var year:Int = 2014;

var month:Int? = 12;
println("month:\(month)")

year = month!

위의 이 코드는 정상적으로 운행할 수 있다
느낌표를 물음표로 바꾸면 오류가 발생합니다.
 
 
6. 요약 2
!선택할 수 있는 변수의 비공식 값을 취할 수 있습니까?이러면 안 돼.
7. 선택할 수 있는 변수는 조건으로 사용할 수 있지만 일반 변수는 사용할 수 없다
 
var a:Int?
if a {
    println("1");
} else {
    println("2");
}

 8.선택적 변수 유형 변환
코드 1:
var a:String? = "22"
println("a:\(a?.toInt())");

코드 2:
var a:String?
println("a:\(a!.toInt())");

코드 3:
var a:String?
println("a:\(a?.toInt())");

설명:?약간 자바에 있는 a==false?"false":"true". 코드 1은 정상적으로 운행할 수 있다. 코드 2는 a의 값을 강제로 가져와서 변환하는 것이지만 코드 3에는 변환이 되지 않고 빈 것으로 판단하고 빈 것으로 판단하면 변환을 실행하지 않는다.
 
누가 바로?판단에서

좋은 웹페이지 즐겨찾기