A Swift Tour로 Swift 공부하기 #1. print #2. Simple Values

minin·2021년 2월 4일
1

A Swift Tour

목록 보기
1/8
post-thumbnail

🍫 notion으로 보기
*본 포스트는 애플의 'A Swift Tour'를 바탕으로 작성되었으며, 공부하며 기록용으로 작성한 포스트이기 때문에 정확하지 않은 정보가 있을 수 있습니다!
** notion으로 작성한 문서를 임시로 올려둔 포스트이기 때문에 사진 링크의 오류와 문서의 형식 등으로 인해 보시기에 불편함이 있을 수 있습니다. (사진이 안나오거나 코드를 보기 불편한 점 등은 빠른 시일 내에 수정하도록 하겠습니다!)

1. print("Hello, World!")

다른 언어들과 달리 스위프트는 위의 간단한 한 줄만으로 출력을 할 수 있다.

그리고 swift의 어느 곳에서든 작성된 코드는 프로그램의 진입점으로 사용되기 때문에, main() 함수가 필요하지 않다.

2. Simple Values var a = 50

let상수var변수 를 사용한다.

let은 컴파일을 할 때 알지 못해도 되지만, 반드시 한 번은 할당 되어야 한다.

즉 한 번 정의한 뒤 변경하지 않고 많은 곳에서 사용할 것을 let으로 지정하면 된다.

var myVariable = 42
myVariable = 50  //var은 변수이기 떄문에 변경할 수 있다.
let myConstant = 42
⛔️ myConstant = 50  //let은 값을 바꾸는 것이 불가능하다.

⛔️ Cannot assign to value: 'myConstant' is a 'let' constant. Change 'let' to 'var' to make it mutable.

fix를 누르면 플레이그라운드가 적절하게 오류를 수정해준다!

변경된 화면: myConstant의 타입을 var로 변경하여 오류를 수정해 주었다.

그리고 위의 예제에서 우리는 myVariable과 myConstant를 int myVariable과 같이 선언하지 않았다. swift는 자료형(data type)을 할당된 값을 통해 알아서 추론하기 때문이다.

: Double

그럼 모호하거나(Int/Double/Float), 값이 설정되지 않은 경우에는 어떻게 할까?

let implicitInteger = 70
let implicitDouble = 70.0
let explicitDouble: Double = 70

위에서 주어진 '70'과 이, Int일수도, Double 일수도, Float일 수도 있는 헷갈리는 값을 할당할 경우에는 변수의 이름 뒤에 : 자료형을 작성해 준다.

**letexplicitDouble: Double = 70**

**실습: 명시적 유형 Float 및 값을 사용하여 상수를 만들기

let constantF: Float = 4
print(constantF)
  • 출력 화면

값들은 다른 자료형으로 변하지 않는다.

만약 값을 다른 자료형으로 변환해야 하는 경우라면, 원하는 자료형을 앞에 적어 자료형을 변환한다.

**String(values)**

let label = "The width is "
let width = 94
let widthLabel = label + String(width)
  • 출력 화면

    ⛔️ Binary operator '+' cannot be applied to operands of type 'String' and 'Int'

두 상수의 자료형이 다르기 때문에 더할 수 없다는 경고가 뜬다

문자열에 값을 포함하는 더 간단한 방법은 없을까?

**\(변수이름)**

백슬래시와 괄호 **\( )**를 이용해서 변수.상수의 값을 출력할 수 있다.

let apples = 3
let oranges = 5
let appleSummary = "I have \(apples) apples."
let fruitSummary = "I have \(apples + oranges) pieces of fruit."
  • 출력 화면

"""

여러 줄을 차지하는 문자열: 세 개의 큰 따옴표 **"""**를 이용한다. 이 때, 시작할 때와 닫힐 때의 """은 제거된다.

let quotation = """
I said "I have \(apples) apples."
And then I said "I have \(apples + oranges) pieces of fruit."
"""
  • 출력 화면

대괄호**[]**를 사용하여 배열array과 사전dictionaries를 만들고, 인덱스 또는 키를 이용하여 대괄호**[] 안의 요소에 접근한다. 마지막 요소 뒤에 콤마`,**`가 올 수 있다.

elements 수정 shoppingList[1] = "bottle of water"

var shoppingList = ["catfish", "water", "tulips"]
shoppingList[1] = "bottle of water"
print(shoppingList[1])
  • print

dictionary에 요소 추가하기 occupations["Jayne"] = "Public Relations"

var occupations = [
    "Malcolm": "Captain",
    "Kaylee": "Mechanic",
    ]
occupations["Jayne"] = "Public Relations"   // occupations + Jayne: PR
print(occupations)
  • print

또 다른 element 추가 방법 .append()

**.append()**를 이용하여 elements를 추가하면 배열이 자동으로 커진다.

shoppingList.append("blue paint")
print(shoppingList)
  • print

빈 array, dictionary 만들기 let empty = [array/dic Type]() / [] / [:]

//빈 배열/사전 만들기
let emptyArray = [String]()
let emptyDictionary = [String: Float]()

//기존 배열/사전 초기화
shoppingList = []
occupations = [:]

print(emptyArray)
print(emptyDictionary)
print(shoppingList)
print(occupations)
  • print
profile
🍫 iOS 🍫 Swift

0개의 댓글