programing

물음표 '?'의 빠른 의미는 무엇입니까?

stoneblock 2023. 9. 1. 20:31

물음표 '?'의 빠른 의미는 무엇입니까?

스위프트 프로그래밍에서 저는 물체가 있는 물음표를 발견했습니다.

var window: UIWindow?

누가 그것의 용도를 설명해 줄 수 있습니까?

사용할 수 있습니다.if그리고.let누락될 수 있는 값을 함께 사용합니다.이 값들은 다음과 같이 표현됩니다.optionalsoptional값이 값을 포함하거나 포함합니다.nil값이 누락되었음을 나타냅니다.값 유형 뒤에 물음표(?)를 작성하여 값을 다음과 같이 표시합니다.optional.

옵션 값이 다음과 같은 경우nil조건은false중괄호 안의 코드를 건너뜁니다.그렇지 않으면 옵션 값이 랩 해제되고 다음 시간 이후의 상수에 할당됩니다.let이를 통해 코드 블록 내에서 랩핑되지 않은 값을 사용할 수 있습니다.

발췌: Apple Inc."스위프트 프로그래밍 언어" 아이북스.https://itun.es/pk/jEUH0.l

예:

var optionalString: String? = "Hello"
optionalString == nil

var optionalName: String? = "John Appleseed"
var greeting = "Hello!"
if let name = optionalName {
    greeting = "Hello, \(name)"
}

이 코드에서 출력은 다음과 같습니다.Hello! John Appleseed그리고 만약 우리가 그 가치를 설정한다면,optionalName~하듯이nil.그if조건부 결과는.false그리고 그 안에 코드가 있습니다.if건너뛸 수 있습니다.

유형 뒤의 물음표는 다음과 같습니다.OptionalsSwift에서 특별한 상수 없이 모든 유형에 대해 값이 전혀 없을 가능성을 나타낼 수 있는 방법입니다.

그것은 당신이 명시적으로 사용했던 것과 같은 상황에서 사용됩니다.return nilObjective-C에서 반환할 객체가 없거나 객체가 아닌 값의 경우 다음과 같은 상수NSNotFound옵션을 사용하면 모든 데이터 유형에서 일관된 방법으로 이를 달성할 수 있습니다.

Apple에서 제공한 iBook

값이 없을 수 있는 상황에서는 옵션을 사용합니다.선택 사항은 다음과 같습니다.

  • 값이 있고 x와 같습니다.

또는

  • 가치가 전혀 없습니다.

여기 예가 있습니다.Swift의 String 유형에는 String 값을 Int 값으로 변환하려고 시도하는 Int로 호출되는 메서드가 있습니다.그러나 모든 문자열을 정수로 변환할 수 있는 것은 아닙니다.문자열 "123"은 숫자 값 123으로 변환할 수 있지만 "hello, world" 문자열에는 변환할 명확한 숫자 값이 없습니다.

let possibleNumber = "123"
let convertedNumber = possibleNumber.toInt()
// convertedNumber is inferred to be of type "Int?", or "optional Int"

ToInt 메서드는 실패할 수 있으므로 Int가 아닌 선택적 Int를 반환합니다.선택적 Int는 Int가 아닌 Int?로 작성됩니다.물음표는 포함된 값이 선택적임을 나타냅니다. 즉, 일부 Int 값을 포함하거나 값이 전혀 포함되지 않을 수 있습니다.이것은 Int이거나 전혀 아무것도 아닙니다.)

옵션에 대한 언어 참조 iBook의 전체 섹션이 있으며, 책 전체에 걸쳐 여러 번 언급되어 있습니다.스위프트 프로그래밍의 기본 개념이며 다른 많은 언어에서는 널리 사용되지 않는 개념이기 때문에 자세히 살펴보아야 합니다.

형식의 선택적 값.

연산자의 : 예: 유: 형의연자선택적버산:as?,의미하다as할 때 일 수 .

언급URL : https://stackoverflow.com/questions/24057171/what-the-meaning-of-question-mark-in-swift