swif(1)

println("Hello, world")

输出结果:

Hello, world


swift使用let来声明常量,使用var来声明变量

//变量
var myVariable = 42
myVariable = 50
//常量
let myConstant = 42

如果初始值没有提供足够的信息(或者没有初始值),那你需要在变量后面声明类型,用冒号分割

let implicitInteger = 70
let implicitDouble = 70.0
//此处声明explicitDouble是double类型的常量
let explicitDouble: Double = 70

类型转换

let label = "The width is"
let width = 94
//嘿嘿,很类似java的强制类型转换
let widthLabel = label + String(width)

let apples = 3
let oranges = 5
let appleSummary = "I have \(apples) apples."
let fruitSummary = "I have \(apples + oranges) pieces of fruit."

swift数组:

  1. 类似java数组

    var shoppingList = ["catfish", "water",        "tulips", "blue paint"]
    shoppingList[0] = "catfish"
    shoppingList[1] = "water"
    shoppingList[2] = "tulips"
    shoppingList[3] = "blue paint"
  2. 或者使用下标或者键(key)来访问元素

    var occupations = [

    "Malcolm": "Captain",

    "Kaylee": "Mechanic",

    ]

    occupations["Jayne"] = "Public Relations"

  3. swift空数组

    let emptyArray = String

    let emptyDictionary = Dictionary<String, Float>()


控制流

java中常见的if..else{...},while,do ...while...,for...在swift中是如何表示的,请往下看:

在数组[75, 43, 103, 87, 12],如果数组中的内容>50,

teamScore+3;否则teamScore+1;

let individualScores = [75, 43, 103, 87, 12]
var teamScore = 0
for score in individualScores {
if score > 50 {
teamScore += 3
} else {
teamScore += 1
}
}
teamScore

switch语句:

let vegetable = "red pepper"
switch vegetable {
//vegetable=celery的话
case "celery":
let vegetableComment = "Add some raisins and make ants on a log."
//vegetable=celery的话或者watercress
case "cucumber", "watercress":
let vegetableComment = "That would make a good tea sandwich."
//字符串中有pepper话执行
case let x where x.hasSuffix("pepper"):
let vegetableComment = "Is it a spicy \(x)?"
//上面条件都不符合,执行如下代码
default:
let vegetableComment = "Everything tastes good in soup."
} let anotherCharacter: Character = "a"
switch anotherCharacter {
case "a":
println("The letter a")
case "A":
println("The letter A")
default:
println("Not the letter A")
}

(没看懂,)

 let interestingNumbers = [
"Prime": [2, 3, 5, 7, 11, 13],
"Fibonacci": [1, 1, 2, 3, 5, 8],
"Square": [1, 4, 9, 16, 25],
]
var largest = 0
for (kind, numbers) in interestingNumbers {
for number in numbers {
if number > largest {
largest = number
}
}
}
largest

while和do while

swift的循环相比java看起来好奇葩

  1. 列表项

初始值为2,便利100以内的值,n=100以内的值逐个*2递增

var n = 2
while n < 100 {
n = n * 2
}
n var m = 2
do {
m = m * 2
} while m < 100
m
  1. 0->3的求和操作,初始值为0

    var firstForLoop = 0

    for i in 0..3 {

    firstForLoop += i

    }

    firstForLoop

    var secondForLoop = 0

    for var i = 0; i < 3; ++i {

    secondForLoop += 1

    }

    secondForLoop


明日计划:

看函数和闭包

Swift学习(1)的更多相关文章

  1. 【swift学习笔记】二.页面转跳数据回传

    上一篇我们介绍了页面转跳:[swift学习笔记]一.页面转跳的条件判断和传值 这一篇说一下如何把数据回传回父页面,如下图所示,这个例子很简单,只是把传过去的数据加上了"回传"两个字 ...

  2. 今天开始Swift学习

    今天开始Swift学习  在此记录笔记  以备之后查阅! allenhuang

  3. iOS ---Swift学习与复习

    swift中文网 http://www.swiftv.cn http://swifter.tips/ http://objccn.io/ http://www.swiftmi.com/code4swi ...

  4. 12套swift学习资源分享

    虽然objective-c编程语言在过去很长一段时间都是iOS应用开发的基础语言,且很多iOS开发者对其也深爱有佳,但是随着swift编程语言的问世,迅速发展为开发者追捧的语言.且今年伴随着swift ...

  5. Swift学习之常用UI的使用

    Swift学习之常用UI的使用 最近笔者在开始学习苹果最新的编程语言,因为笔者认为,苹果既然出了这门语言就绝对不会放弃,除非苹果倒闭了(当然这里知识一个玩笑). 所以在不久的将来,swift绝对是iO ...

  6. [转]swift 学习资源 大集合

    今天看到了一个swift的学习网站,里面收集了很多学习资源 [转自http://blog.csdn.net/sqc3375177/article/details/29206779] Swift 介绍 ...

  7. swift 学习资源 大集合

    今天看到一个swift学习网站,其中我们收集了大量的学习资源 Swift 介绍 Swift 介绍 来自 Apple 官方 Swift 简单介绍 (@peng_gong) 一篇不错的中文简单介绍 [译] ...

  8. Swift学习笔记(一)搭配环境以及代码运行成功

    原文:Swift学习笔记(一)搭配环境以及代码运行成功 1.Swift是啥? 百度去!度娘告诉你它是苹果最新推出的编程语言,比c,c++,objc要高效简单.能够开发ios,mac相关的app哦!是苹 ...

  9. swift学习:第一个swift程序

    原文:swift学习:第一个swift程序 最近swift有点火,赶紧跟上学习.于是,个人第一个swift程序诞生了... 新建项目

  10. swift学习 - 计时器

    swift学习之计时器 这个demo主要学习在swift中如何操作计时器(Timer),按钮(UIButton),文本(Label) 效果图: 代码 import UIKit class ViewCo ...

随机推荐

  1. Newtonsoft.Json使用

    SkuBean sb = (SkuBean)Newtonsoft.Json.JsonConvert.DeserializeObject(jobj.ToString(), typeof(SkuBean) ...

  2. Linux内核协议栈 NAT性能优化之FAST NAT

    各位看官非常对不起,本文是用因为写的,如果多有不便敬请见谅 代码是在商业公司编写的,在商业产品中也不能开源,再次抱歉   This presentation will highlight our ef ...

  3. 【第一篇】学习 android 事件总线androidEventbus之sticky事件的传递

    最近再看eventbus相关代码,首先从使用开始,后期再从源码角度分析eventbus.使用Demo后期公布到github上去. 使用的框架地址:https://github.com/bboyfeiy ...

  4. 在 Linux 环境下报错 java.lang.reflect.InvocationTargetException

    今天开发了一个 excel 导出数据的功能,放到 linux 服务器上后发现报错. 捕获到 java.lang.reflect.InvocationTargetException 异常,这个异常不太常 ...

  5. float的精度,3个小数相加后精度丢失--小数比较使用bccomp()方法

    $a = 1200.00;$b = 1199.80;$c = 0.1;$u = 0.12; $d = $b+$c+$u;var_dump($a);var_dump($d);var_dump(bccom ...

  6. ECOS运行环境安装(一)

    ECOS为上海商派公司研发的PHP电商框架.详情见 http://www.ec-os.net/doc.html 本文介绍CentOS6.x 64位下安装ECOS1.2运行环境的具体步骤: 1)需要准备 ...

  7. javascript模糊查询一个数组

    /* * 模糊查询一个数组 */ com.ty.repairtech.JsonOperation.searchList = function(str, container) { var newList ...

  8. javascript 浏览器

    hashchange事件 window.location.hash.slice(1) 添加和修改历史记录条目LINKHTML5引进了history.pushState()方法和history.repl ...

  9. kubernetes 条件需求

    1. 你必须拥有一台安装有Docker的机器. 2. 你的内核必须支持 memory and swap accounting .确认你的linux内核开启了如下配置: CONFIG_RESOURCE_ ...

  10. easyui datagrid deleteRow(删除行)的BUG!

    转自:http://my.oschina.net/fants/blog/77189项目中又用到easyui 的datagrid做数据展示.功能很强大,很实用,但bug也很多.今天这个就够让人头疼. 如 ...