swift菜鳥教程6-10(運算符,條件,循環,字符串,字符)

一個樸實無華的目錄

  • 今日學習內容:
    • 1.Swift 運算符
      • 算術運算符
      • 比較運算符
      • 邏輯運算符
      • 位運算符
      • 賦值運算
      • 區間運算符
      • 其他運算符
    • 2.Swift 條件語句
    • 3.Swift 循環
    • 4.Swift 字符串
      • 字符串屬性 isEmpty
      • 字符串常量let 變量var
      • 字符串中插入值
      • 字符串連接
      • 字符串長度 String.count
      • 使用 == 來比較兩個字符串是否相等:
      • 循環迭代出字符串中 UTF-8 與 UTF-16 的編碼
      • 字符串函數及運算符:
    • 5.Swift 字符(Character)
      • 遍歷字符串中的字符
      • 字符串連接字符

今日學習內容:

1.Swift 運算符

算術運算符

import Cocoavar A = 10
var B = 20print("A + B 結果為:\(A + B)")
print("A - B 結果為:\(A - B)")
print("A * B 結果為:\(A * B)")
print("B / A 結果為:\(B / A)")
A += 1   // 類似 A++
print("A += 1 后 A 的值為 \(A)")
B -= 1   // 類似 B--
print("B -= 1 后 B 的值為 \(B)")

以上程序執行結果為:

A + B 結果為:30
A - B 結果為:-10
A * B 結果為:200
B / A 結果為:2
A += 1 后 A 的值為 11
B -= 1 后 B 的值為 19

比較運算符

import Cocoavar A = 10
var B = 20print("A == B 結果為:\(A == B)")
print("A != B 結果為:\(A != B)")
print("A > B 結果為:\(A > B)")
print("A < B 結果為:\(A < B)")
print("A >= B 結果為:\(A >= B)")
print("A <= B 結果為:\(A <= B)")

以上程序執行結果為:

A == B 結果為:false
A != B 結果為:true
A > B 結果為:false
A < B 結果為:true
A >= B 結果為:false
A <= B 結果為:true

邏輯運算符

import Cocoavar A = true
var B = falseprint("A && B 結果為:\(A && B)")
print("A || B 結果為:\(A || B)")
print("!A 結果為:\(!A)")
print("!B 結果為:\(!B)")

以上程序執行結果為:

A && B 結果為:false
A || B 結果為:true
!A 結果為:false
!B 結果為:true

位運算符

import Cocoavar A = 60  // 二進制為 0011 1100
var B = 13 // 二進制為 0000 1101print("A&B 結果為:\(A&B)")
print("A|B 結果為:\(A|B)")
print("A^B 結果為:\(A^B)")
print("~A 結果為:\(~A)")

以上程序執行結果為:

A&B 結果為:12
A|B 結果為:61
A^B 結果為:49
~A 結果為:-61

賦值運算

在這里插入圖片描述

區間運算符

…< 不包含最后一個
在這里插入圖片描述

其他運算符

import Cocoavar A = 1
var B = 2
var C = true
var D = false
print("-A 的值為:\(-A)")
print("A + B 的值為:\(A + B)")
print("三元運算:\(C ? A : B )")
print("三元運算:\(D ? A : B )")

以上程序執行結果為:

-A 的值為:-1
A + B 的值為:3
三元運算:1
三元運算:2

2.Swift 條件語句

在這里插入圖片描述
在這里插入圖片描述

3.Swift 循環

在這里插入圖片描述

4.Swift 字符串

字符串屬性 isEmpty

import Cocoa// 使用字符串字面量創建空字符串
var stringA = ""if stringA.isEmpty {print( "stringA 是空的" )
} else {print( "stringA 不是空的" )
}// 實例化 String 類來創建空字符串
let stringB = String()if stringB.isEmpty {print( "stringB 是空的" )
} else {print( "stringB 不是空的" )
}

字符串常量let 變量var

import Cocoa// stringA 可被修改
var stringA = "菜鳥教程:"
stringA += "http://www.runoob.com"
print( stringA )// stringB 不能修改
let stringB = String("菜鳥教程:")
stringB += "http://www.runoob.com"
print( stringB )

字符串中插入值

import Cocoavar varA   = 20
let constA = 100
var varC:Float = 20.0var stringA = "\(varA) 乘于 \(constA) 等于 \(varC * 100)"
print( stringA )

以上程序執行輸出結果為:

20 乘于 100 等于 2000.0

字符串連接

import Cocoalet constA = "菜鳥教程:"
let constB = "http://www.runoob.com"var stringA = constA + constBprint( stringA )

以上程序執行輸出結果為:

菜鳥教程:http://www.runoob.com

字符串長度 String.count

import Cocoavar varA   = "www.runoob.com"print( "\(varA), 長度為 \(varA.count)" )

以上程序執行輸出結果為:

www.runoob.com, 長度為 14

使用 == 來比較兩個字符串是否相等:

import Cocoavar varA   = "Hello, Swift!"
var varB   = "Hello, World!"if varA == varB {print( "\(varA)\(varB) 是相等的" )
} else {print( "\(varA)\(varB) 是不相等的" )
}

以上程序執行輸出結果為:

Hello, Swift!Hello, World! 是不相等的

循環迭代出字符串中 UTF-8 與 UTF-16 的編碼

import Cocoavar unicodeString   = "菜鳥教程"print("UTF-8 編碼: ")
for code in unicodeString.utf8 {print("\(code) ")
}print("\n")print("UTF-16 編碼: ")
for code in unicodeString.utf16 {print("\(code) ")
}

字符串函數及運算符:

在這里插入圖片描述
在這里插入圖片描述

5.Swift 字符(Character)

遍歷字符串中的字符

在這里插入圖片描述

字符串連接字符

import Cocoavar varA:String = "Hello "
let varB:Character = "G"varA.append( varB )print("varC  =  \(varA)")

以上程序執行輸出結果為:

varC  =  Hello G

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/77630.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/77630.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/77630.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

泛微ECOLOGY9 記 數據展現集成 自定義開窗測試中對SQL 的IN語法轉換存在BUG

背景 搭建流程時&#xff0c;需將明細表1中的合同字段 供明細表2中的合同開窗查詢使用。 最終實現如下圖&#xff1a; 選擇 發票號時&#xff0c;自動帶出明細表1中的采購合同號清單&#xff0c;然后在明細表2中開窗采購合同號時&#xff0c;只跳出明細表1中有的采購合同號&am…

(自用)藍橋杯準備(需要寫的基礎)

要寫的文件 led_app lcd_app key_app adc_app usart_app scheduler LHF_SYS一、外設引腳配置 1. 按鍵引腳 按鍵引腳配置如下&#xff1a; B1&#xff1a;PB0B2&#xff1a;PB1B3&#xff1a;PB2B4&#xff1a;PA0 2. LCD引腳 LCD引腳配置如下&#xff1a; GPIO_Pin_9 /* …

PM2 完全指南:Node.js 應用后臺啟動、關閉與重啟詳解

文章目錄 **PM2 完全指南&#xff1a;Node.js 應用后臺啟動、關閉與重啟詳解****1. 什么是 PM2&#xff1f;****2. 安裝 PM2****全局安裝****驗證安裝** **3. 使用 PM2 啟動 Node.js 應用****基本啟動****指定應用名稱****集群模式&#xff08;多進程負載均衡&#xff09;****監…

Linux環境變量詳解

引言 在Linux系統中&#xff0c;環境變量是一種非常重要的概念&#xff0c;它影響著系統的運行方式和應用程序的行為。無論你是Linux新手還是經驗豐富的管理員&#xff0c;深入理解環境變量都能幫助你更高效地使用和管理Linux系統。本文將從基礎概念到高級應用&#xff0c;全面…

408 計算機網絡 知識點記憶(8)

前言 本文基于王道考研課程與湖科大計算機網絡課程教學內容&#xff0c;系統梳理核心知識記憶點和框架&#xff0c;既為個人復習沉淀思考&#xff0c;亦希望能與同行者互助共進。&#xff08;PS&#xff1a;后續將持續迭代優化細節&#xff09; 往期內容 408 計算機網絡 知識…

@linux系統SSL證書轉換(Openssl轉換PFX)

在Linux中&#xff0c;你可以使用OpenSSL工具將PFX/P12格式的證書轉換為單獨的CRT&#xff08;證書&#xff09;、KEY&#xff08;私鑰&#xff09;文件以及提取證書鏈 1. 提取私鑰文件(.key) openssl pkcs12 -in your_certificate.pfx -nocerts -out private.key -nodes系統會…

DAOS系統架構-組件

如上圖所示&#xff0c;一個完整的DAOS系統是由管理節點組件、客戶端節點組件、服務端節點組件以及網絡通信組件四個部分組成。管理節點組件通過管理網絡通道&#xff08;藍色&#xff09;對DAOS服務管理和監控。客戶端節點組件通過數據網絡通道&#xff08;紅色&#xff09;與…

制作一款打飛機游戲教程2:背景滾動

滾動原型開發 接下來&#xff0c;我們開始聚焦滾動原型的開發。我們需要確定游戲關卡的長度以及背景滾動的速度。 地圖與精靈空間限制 在開發過程中&#xff0c;我們遇到了地圖與精靈空間限制的問題。PICO 8的地圖編輯器下半部分與精靈表共享空間&#xff0c;這意味著我們只…

計算機組成原理——CPU與存儲器連接例題

計算機組成原理——CPU與存儲器連接例題 設CPU共有16根地址線和8根數據線&#xff0c;并用(MREQ) ?作為訪存控制信號&#xff08;低電平有效&#xff09;&#xff0c;(WR) ?作為讀/寫命令信號&#xff08;高電平讀&#xff0c;低電平寫&#xff09;。現有下列存儲芯片&#…

GNSS靜態數據處理

1 安裝數據處理軟件&#xff1a;儀器之星&#xff08;InStar &#xff09;和 Trimble Business Center 做完控制點靜態后&#xff0c;我們需要下載GNSS數據&#xff0c;對靜態數據進行處理。在處理之前需要將相關軟件在自己電腦上安裝好&#xff1a; 儀器之星&#xff08;InS…

Process Explorer 性能調優實戰:精準定位資源泄漏與高負載進程

一、下載與安裝 ?下載地址? Process Explorer安裝包下載&#xff1a;https://pan.quark.cn/s/950c36ba5364下載后解壓壓縮包&#xff0c;運行 procexp.exe&#xff08;32 位系統&#xff09;或 procexp64.exe&#xff08;64 位系統&#xff09;?。 ?界面概覽? 主界面以樹…

SVMSPro分布式綜合安防管理平臺-->以S3存儲革新,開啟智能安防新紀元

SVMSPro分布式綜合安防管理平臺–>以S3存儲革新&#xff0c;開啟智能安防新紀元 在數字化轉型浪潮下&#xff0c;企業安防管理正面臨海量數據存儲、跨區域協同以及數據安全的嚴峻挑戰。如何實現高效、彈性、低成本的存儲擴容&#xff1f;如何確保關鍵錄像數據萬無一失&…

Python 裝飾器(Decorator)

文章目錄 代碼解析1. 裝飾器定義 timer(func)2. 應用裝飾器 timer **執行流程****關鍵點****實際應用場景****改進版本&#xff08;帶 functools.wraps&#xff09;** 這是一個 Python 裝飾器&#xff08;Decorator&#xff09; 的示例&#xff0c;用于測量函數的執行時間。下…

git commit時自動生成Change-ID

創建全局鉤子目錄&#xff1a; 創建一個全局的Git hooks目錄&#xff1a; mkdir -p ~/.githooks 下載并設置commit-msg鉤子腳本&#xff1a; 下載Gerrit的commit-msg鉤子腳本&#xff0c;并放置在全局鉤子目錄中(如下載不了&#xff0c;可從本頁面附件中下載&#xff0c;“…

最新Ktransformers v0.24(Docker)并發部署DeepSeek-V3-0324模型

一、介紹 KTransformers v0.2.4 發布說明 我們非常高興地宣布&#xff0c;期待已久的 KTransformers v0.2.4 現已正式發布&#xff01;在這個版本中&#xff0c;我們對整 體架構進行了重大重構&#xff0c;更新了超過 1 萬行代碼&#xff0c;為社區帶來了備受期待的多并發支…

飛牛私有云5大硬核功能實測!

&#x1f4f8; 1. 智能相冊&#xff1a;AI搜圖原圖自由 - 自動備份&#xff1a;手機照片/視頻實時同步&#xff0c;支持RAW格式、實況照片無損備份&#xff0c;釋放128G手機秒變256G。 - AI黑科技&#xff1a; - 人臉識別&#xff1a;自動歸類人物相冊&#xff0c;輸入「媽媽…

webrtc pacer模塊(一) 平滑處理的實現

Pacer起到平滑碼率的作用&#xff0c;使發送到網絡上的碼率穩定。如下的這張創建Pacer的流程圖&#xff0c;其中PacerSender就是Pacer&#xff0c;其中PacerSender就是Pacer。這篇文章介紹它的核心子類PacingController及Periodic模式下平滑處理的基本流程。平滑處理流程中還有…

【android bluetooth 協議分析 01】【HCI 層介紹 1】【hci_packets.pdl 介紹】

在 AOSP 的藍牙協議棧 (Gabeldorsche) 中&#xff0c;hci_packets.pdl 是一個 協議描述語言文件&#xff0c;用于定義 HCI (Host Controller Interface) 層的數據包結構和通信協議。以下是詳細解析&#xff1a; 1. 文件作用 system/gd/hci/hci_packets.pdl 協議自動化生成&…

操作系統 4.2-鍵盤

鍵盤中斷初始化和處理 提取的代碼如下&#xff1a; // con_init 函數&#xff0c;初始化控制臺&#xff08;包括鍵盤&#xff09;的中斷 void con_init(void) {set_trap_gate(0x21, &keyboard_interrupt); } ? // 鍵盤中斷處理函數 .globl _keyboard_interrupt _keyboard…

深入理解Softmax函數及其在PyTorch中的實現

Softmax函數簡介 Softmax函數在機器學習和深度學習中&#xff0c;被廣泛用于多分類問題的輸出層。它將一個實數向量轉換為概率分布&#xff0c;使得每個元素介于0和1之間&#xff0c;且所有元素之和為1。 Softmax函數的定義 給定一個長度為 K K K的輸入向量 z [ z 1 , z 2 …