iOS-Day3 認識Swift語法

Hao
彼得潘的 Swift iOS / Flutter App 開發教室
5 min readMar 17, 2024
目錄
ㄧ、Print打印
二、格式化字符串
三、常量與變量
四、type(Of:)獲取類型
五、方法的使用
六、轉換絕對值
七、範例練習

ㄧ、Print 打印

//terminator不換行
print("R","O","L", terminator: "")
//separator間隔樣式
print("R","O","L", separator: "_")
//範例
var name = "王XX"
var age = 30
var contnnt = "是一位人才"
print("\(name),今年\(age)歲")//王XX,今年30歲

二、格式化字符串

  • 使用\()在字符串中插值。
  • 使用"""實現多行字符串(换行等格式保持不变)。
// \()
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."
"""

三、常量與變量

常量和變量必須在使用前聲明,用 let 來聲明常量(值不能改變,用來作預設值),用 var 來聲明變量。變數是某一塊記憶體的資料。

var 變量名稱 : 類型(型態別名) = 值 
//基本寫法
let num:Int = 2019
var name:String = "Tom"
//多行寫法
var weight = 66.5, height = 168
//定義相同類型的多個相關變數
var red, green, blue: Double
//================================
//原本寫法
var num1 = 3.4
var num2 = Int(num1)
//改寫後,直接把參數放入到()裡
var num2 = Int(3.4)
//================================
//例如
let robotImageView = UIImageView(image: UIImage(named:"robot.png"))
//================================
//相同型別才能做相互加減
let constant: Int = 10
var number: Int = 10
var result: Int = number + constant //20

四、type(Of:)獲取類型

type(Of:)⽤來取得⼀個值的動態型別。

var a = "Taiwan"
var b = 3
var c = 4.0
var d = true
print(type(of: a))//String
print(type(of: b))//Int
print(type(of: c))//Double
print(type(of: d))//Bool
  • 靜態型別(static type),是在編譯時期確定的型別。
  • 動態型別(dynamic Type),是在運⾏時期確定的型別。

五、方法的使用

呼叫圖片或 SF Symbols。

//加入圖片
let getImage = UIImage(named:"xxx.png")
//生成 SF Symbols
let wifiImage = UIImage(systemName: "wifi")

六、轉換絕對值

有多種方法可以轉換為絕對值。該數字可以是Int、Float、Double類型。先在程式碼中導入foundation,才能使用這些方法。

import Foundation;
//abs:整數絕對值
var number = -123
print(abs(number)) //123
number=1231
print(abs(number)) //1231
//fabs:Double類型絕對值
var number :Double = -123.123
print(fabs(number)) //123.123
//fabsf:浮點數絕對值
var number :Float = -123.123
print(fabsf(number)) //123.123
//magnitude:Int類型
var number = -345.123
print(number.magnitude) //345.123

七、範例練習

1.題目:Swap交換 給定兩個變數 a 和 b,交換它們的值。也就是說,a 的新值將成為 b 的舊值,反之亦然。

var a = 10
var b = 15
let temp = a
a = b
b = temp
print(a,b)

2.題目:給你一個數字a。印出a的最後一位數字。(透過餘數獲取)

let a = 1234567
let lastDigit = a % 10
print(lastDigit)

3.題目:求出一個三角型面積。[公式:底x高 / 2]

func calculateTriangleArea(base: Double, height: Double) -> Double {
return 0.5 * base * height
}

let base = 5.0
let height = 8.0
let area = calculateTriangleArea(base: base, height: height)
print("三角形的面積為:\(area)")//三角形的面積為:20.0

--

--