当前位置:首页 > 技术 > 正文内容

Swift语言基础入门教程

访客 技术 2026年6月19日 1

开发环境准备

本教程基于 Xcode 7.0 版本进行演示,适用于初学者快速上手 Swift 编程。启动 Xcode 后,选择 File > New > Workspace 创建新项目。

创建 Swift 项目

在新建项目时,请确保选择 Swift 作为编程语言。项目结构将自动生成标准目录,便于后续代码管理与维护。

输出测试:控制台打印

import Foundation

print("欢迎进入 Swift 学习之旅!")
print("当前年份:\(2024) 年 \(10) 月 \(5) 日")
print("Hello, Swift!")

变量与常量声明

var score = 95           // 可变变量
let maxScore = 100       // 不可变常量
// maxScore = 101        // 编译错误:常量不可修改

print("当前得分:\(score),最高分:\(maxScore)")

数据类型定义

var message = "你好,世界"          // 类型推断
var title: String = "Swift 入门"   // 显式声明类型
var age: Int = 25
var price: Double = 99.9
var isActive: Bool = true

print("标题:\(title),年龄:\(age),价格:\(price),状态:\(isActive)")

字符串拼接与格式化

var greeting = "你好"
greeting += ", 欢迎来到 Swift 世界!"

// 使用插值表达式拼接
let user = "小明"
let result = "\(greeting) 欢迎你,\(user)!"

print(result)

// 数值与字符串混合拼接
let count = 10
print("共 \(count) 个元素")

数组操作

// 声明并初始化数组
var fruits = ["苹果", "香蕉", "橙子"]
var numbers = [Int]()         // 空整型数组
var emptyStrings = [String]() // 空字符串数组

// 添加元素
fruits.append("葡萄")
print(fruits)

// 遍历数组
for fruit in fruits {
    print("水果:\(fruit)")
}

字典使用方法

// 定义字典(键值对)
var userInfo = [
    "name": "李华",
    "age": 23,
    "city": "北京"
]

// 动态添加或修改
userInfo["job"] = "程序员"
print(userInfo["name"] ?? "未知")

// 遍历字典
for (key, value) in userInfo {
    print("\(key): \(value)")
}

循环语句详解

// 闭区间循环(包含终点)
for i in 1...5 {
    print("数字:\(i)")
}

// 半开区间(不包含终点)
for j in 1..<5 {
    print("j = \(j)")
}

// for-in 遍历数组
let items = ["A", "B", "C"]
for item in items {
    print("项:\(item)")
}

// while 循环遍历
var index = 0
while index < items.count {
    print("索引 \(index) -> \(items[index])")
    index += 1
}

条件判断与可选类型

var temperature: Int? = nil  // 可选类型

if let temp = temperature {
    print("当前温度:\(temp)°C")
} else {
    print("未获取到温度数据")
}

temperature = 28
if let temp = temperature {
    if temp > 25 {
        print("天气较热")
    } else {
        print("气温适中")
    }
}

函数定义与调用

// 无返回值函数
func greet(person: String) {
    print("你好,\(person)!")
}

greet(person: "小张")

// 返回单个值
func getYear() -> Int {
    return 2024
}

let currentYear = getYear()
print("当前年份:\(currentYear)")

// 多返回值函数
func calculate(a: Int, b: Int) -> (sum: Int, product: Int) {
    return (a + b, a * b)
}

let result = calculate(a: 5, b: 3)
print("和:\(result.sum),积:\(result.product)")

// 带参数的函数
func formatMessage(text: String, prefix: String = "【提示】") -> String {
    return "\(prefix) \(text)"
}

print(formatMessage(text: "学习进度更新"))
print(formatMessage(text: "系统异常", prefix: "⚠️"))

类与对象基础

// 定义一个类
class Person {
    var name: String
    var age: Int

    init(name: String, age: Int) {
        self.name = name
        self.age = age
    }

    func introduce() {
        print("我是 \(name),今年 \(age) 岁。")
    }
}

// 实例化对象
let student = Person(name: "小王", age: 20)
student.introduce()

// 继承与重写
class Student: Person {
    var grade: String

    override init(name: String, age: Int, grade: String) {
        self.grade = grade
        super.init(name: name, age: age)
    }

    override func introduce() {
        print("我是学生 \(name),就读于 \(grade) 年级,年龄 \(age) 岁。")
    }
}

let s = Student(name: "小李", age: 16, grade: "高一")
s.introduce()
标签: swiftXcode
返回列表

上一篇:扩展KMP算法及其应用

没有最新的文章了...

相关文章

Linux crontab 详解

1) crontab 是什么cron 是 Linux 的定时任务守护进程;crontab 是用来编辑/查看“按时间周期执行命令”的表(cron table)。常见两类:用户 crontab:每个用户一份(crontab -e 编辑)系统级 crontab / cron.d:可指定执行用户(/etc/crontab、/etc/cron.d/*)2) crontab 时间...

富文本里可以允许的 HTML 属性

一、所有标签默认允许的安全属性(极少)class        (可选)id           (通常建议禁用)title️ 注意:id 容易被滥用做锚点注入,很多系统直接禁用class 允许的话最好只允许固定前缀(如 editor-*)二、a 标签允许属性<a href="" t...

Mac 安装 Node.js 指南

方法一:通过官网安装包(最简单,适合初学者)如果你只是想快速安装并开始使用,这是最直接的方法。访问 Node.js 官网。页面会显示两个版本:LTS (Recommended For Most Users):长期支持版,最稳定。建议选这个。Current:最新特性版,包含最新功能但可能不够稳定。下载 .pkg 安装包并运行。按照安装向导点击“下一步”即可完成。方法二:使用 Homebrew 安装(...

Dom\HTML_NO_DEFAULT_NS 的副作用:自动加闭合标签

在使用Dom\HTMLDocument时,Dom\HTML_NO_DEFAULT_NS 将禁止在解析过程中设置元素的命名空间, 此设置是为了与DOMDocument向后兼容而存在的。当使用它时,已知的一个副作用就是:自动加闭合标签例如 </img> 为什么会这样?当你使用:Dom\HTML_NO_DEFAULT_NS文档会变成 无命名空间模式,此时内部更接近 XML...

Laravel 事件和监听器创建

在 Laravel 中,使用 Artisan 命令创建 Events(事件) 和 Listeners(监听器) 是非常高效的。你可以通过以下几种方式来实现:1. 手动创建单个 Event如果你只想创建一个事件类,可以使用 make:event 命令:Bashphp artisan make:event UserRegistered执行后,文件将生成在 app/Even...

自定义域名解析神器 dnsmasq

什么是 dnsmasq?dnsmasq 是一个轻量级、功能强大的网络服务工具,专为小型和中等规模网络设计。它是一个综合的网络基础设施解决方案[1]。dnsmasq 能做什么?功能说明应用场景DNS 转发与缓存将 DNS 查询转发到上游服务器(ISP、Google DNS 等),并在本地缓存结果加快 DNS 查询速度,减少外部 DNS 流量本地 DNS解析本地网络设备的主机名,无需编辑&n...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。