Swift總結(jié)一

Swift第一周學習總結(jié)

什么是程序

程序是為實現(xiàn)特定目標或解決特定問題而用計算機語言編寫的命令序列的集合

print("你好,世界谨垃!")

變量常量和元組

在swift中變量使用var來修飾砌烁,常量使用let來修飾漏隐,變量可以修改而常量不能被修改剪个。
正常情況下整數(shù) 使用Int 小數(shù)使用Double 字符串使用String bool表示真假
元組是一種復合的數(shù)據(jù)類型沪铭,只要將多個數(shù)據(jù)(可以是相同或不同數(shù)據(jù)類型的)使用一對()括起來就稱之為一個元組届巩。
例: 常量

let a = 0  //在swift中會自動推導定義的當前的類型

變量

var a = 0
var b = Int(10.6) //變量可以轉(zhuǎn)換類型 將Double類型轉(zhuǎn)換為Int類型
a = 1    //var定義的時變量可以將其定義的a可以重新賦值 且類型必須一致

元組

var a = 0
var b = 1
var c = 2
var d = 3
(c, d ) = ( a, b)//將c和b的值進行交換并復制給對方 d和a進行交換

標示符命名規(guī)則

變量和常量的命名wift幾乎可以使用任意的字符硅瞧,除了空格、數(shù)學符號恕汇、箭頭腕唧、特殊用途或無效的字符,
1.字母,數(shù)字,下劃線主儡, 數(shù)字不能開頭
2.大小寫敏感
3.不能使用關(guān)鍵字做標示符
4.駝峰標示 第一個單詞全小寫以后的每一個單詞首字母大寫
5見名知意

let π = 12365
let 你好 = "你好, 世界!"
let ? = "flower"

運算符

在程序中的運算符有 “+” “-” “*” “/” “=” “==” “乡小!=” “%”, 分別是 加 減 乘 除 賦值 等于 不等于 取余(求莫) 短路與運算(而且) && (或者)||
使用 賦值(”=“) 除 (”/“) 取余 (”%“) 分別取出個位十位百位的余數(shù)分別賦值給b,c,d

let a = 123 // 將123 賦值給a
let b =  a % 10// 取個位的余數(shù)并將取出的余數(shù)賦值給b
let c =  a / 10 % 10// 取十位的余數(shù)并將取出的余數(shù)賦值給c
let d =  a / 100// 取百位的余數(shù)并將取出的余數(shù)賦值給d

用短路與運算判斷當前的年份是否是閏年

let year = 2016
//判斷year莫4的余數(shù)等于0 而且year莫100的余數(shù)不等于0 或者year莫400等于0
if year % 4 == 0 && year % 100 != 0 || year  % 400 == 0 {
    print("\\(yearr)是閏年") //字符串插值\\()
}
else{
    print("\\(yearr)不是閏年")
 }

分支結(jié)構(gòu)

在swift中分支結(jié)構(gòu)有 switch-case-default 酿矢, if-else
switch-case-default 分子結(jié)構(gòu)

var s = "L"
switch s{
  case "U":
  print("上")
  case "D"
  print("下")
  case "L":
  print("左")
  dedault :
  print("右")
}

if- else 分支結(jié)構(gòu) 實現(xiàn)分段函數(shù)求值

let x = -2
var y = 0
if x > 0 {
  y = x + 1
}
else if x < 0
{
 y = x - 3
}
else{
 y = 2 * x
}
print(y)

循環(huán)結(jié)構(gòu)

在swift中的循環(huán)結(jié)構(gòu)有 for while repeat-while
repeat-while循環(huán)取代了其他語言的 do-while循環(huán),repeat-while 循環(huán)至少進行一次的循環(huán),u一次循環(huán)完畢后才能進行判斷
下面分別使用三種循環(huán)求一到一百的和
for

var sum = 0
for i in 1...100{   //這里還能這樣寫  for i in 1..<101 取1-101的開區(qū)間(左閉右開)
sum += i
}
print("1-100的和=\\(sum)")

while

var  sum = 0
var  i = 1
while i<=100{
sum += i
 i += 1
}
print("1-100的和=\\(sum)")

repeat-while

var  sum = 0
var  i = 1
repeat {
sum += i
 i += 1
} while i <= 100
print("1-100的和=\\(sum)")

數(shù)組

在swift中自帶了幾種的排序和插入值
1.創(chuàng)建數(shù)組

var array1 = [String]()
var array2: [String] = []
var array3 = ["apple", "grape", "banana", "apple", "orange"]
var array4 = [String](count: 100, repeatedValue: "")//count表示數(shù)組的長度 repeatedValue 表示初始值

2向數(shù)組中添加元素

array1 += ["strawberry"]
array1.append("pear") //依次添加
array1.insert("waxberry", atIndex: 0)//指定位置插入 atIndex:表示插入的位置

3從數(shù)組中刪除元素

array1.removeAll(keepCapacity: true)//只刪除元素  不刪除空間(true)
array1.removeAtIndex(0)//指定位置刪除
array1.removeFirst(<#T##n: Int##Int#>)//刪除前n100
array1.removeLast()//刪除最后一個
array1.removeRange(2...6)//刪除一個區(qū)域

4 數(shù)組的復制

var array1 = array2
array1[0] = "pitaya"
var array3 = array2[1...3]//指定復制的區(qū)域

5 獲取數(shù)組元素個數(shù)

print(array1.count)

6對數(shù)組中的元素進行遍歷

for index in 0..<array3.count {
    // []是對數(shù)組進行下標運算(取出指定位置的元素)
    print(array3[index])
    if index == 1 {
        array3[index] = "litch"
    }
}

7.數(shù)組的+運算

let array7 = array1 + array3
print(array7)

利用循環(huán)給數(shù)組排序

簡單選擇排序: 每次從剩下元素中找最小的元素放到對應的位置

 avr array = [10, 9, 16, 36, 0, 87, 11]
for i in 0..<array.count - 1 {
    var minIndex = i
    for j in i + 1..<array.count {
        if array[j] < array[minIndex] {
           minIndex = j
       }
   }
   (array[i], array[minIndex]) = (array[minIndex], array[i])//用元組進行位置交換
}
print(array)

冒泡排序: 兩兩比較, 前面的元素比后面的元素大就交換位置

avr array = [10, 9, 16, 36, 0, 87, 11]
for i in 0..<array.count - 1 {
   var swapped = false
  for j in 0..<array.count - 1 - i {
  if array[j] > array[j + 1] {
           (array[j], array[j + 1]) = (array[j + 1], array[j])
          swapped = true
      }
  }
  if !swapped {
       break
   }

print(array)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末樱衷,一起剝皮案震驚了整個濱河市创译,隨后出現(xiàn)的幾起案子膀曾,更是在濱河造成了極大的恐慌县爬,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件添谊,死亡現(xiàn)場離奇詭異财喳,居然都是意外死亡,警方通過查閱死者的電腦和手機斩狱,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進店門耳高,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人所踊,你說我怎么就攤上這事泌枪。” “怎么了秕岛?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵碌燕,是天一觀的道長。 經(jīng)常有香客問我瓣蛀,道長陆蟆,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任惋增,我火速辦了婚禮叠殷,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘诈皿。我一直安慰自己林束,他們只是感情好,可當我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布稽亏。 她就那樣靜靜地躺著壶冒,像睡著了一般。 火紅的嫁衣襯著肌膚如雪截歉。 梳的紋絲不亂的頭發(fā)上胖腾,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天,我揣著相機與錄音瘪松,去河邊找鬼咸作。 笑死,一個胖子當著我的面吹牛宵睦,可吹牛的內(nèi)容都是我干的记罚。 我是一名探鬼主播,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼壳嚎,長吁一口氣:“原來是場噩夢啊……” “哼桐智!你這毒婦竟也來了末早?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤说庭,失蹤者是張志新(化名)和其女友劉穎然磷,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體刊驴,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡样屠,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了缺脉。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡悦穿,死狀恐怖攻礼,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情栗柒,我是刑警寧澤礁扮,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站瞬沦,受9級特大地震影響太伊,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜逛钻,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一僚焦、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧曙痘,春花似錦芳悲、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至茧痒,卻和暖如春肮韧,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背旺订。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工弄企, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人耸峭。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓桩蓉,卻偏偏與公主長得像,于是被迫代替她去往敵國和親劳闹。 傳聞我的和親對象是個殘疾皇子院究,可洞房花燭夜當晚...
    茶點故事閱讀 42,916評論 2 344

推薦閱讀更多精彩內(nèi)容