Swift学习--常量.变量.数据类型的使用(二)
一.Swift中的数组
//Swift中的数组
//NSArray *arr = @["",""]; //和OC数组的区别就是去掉前面的@
let arr11 = ["zhangsan", "lisi"]
print(arr11) // 遍历每一个元素
for a in arr11 {
print(a)
} // 像 OC 一样打印
print(arr11 as NSArray) // 数组中保存的都是字符串
let arr = ["zhangsan", "lisi"] // 数组中保存的是 NSObject
let arr1 = ["zhangsan", ]
// 定义只能保存字符串类型数组
var array: [String] // 初始化数组
array = ["zhangsan"] // 添加元素
array.append("lisi") print(array) // 删除元素
array.removeAtIndex()
print(array) // 删除所有元素
array.removeAll(keepCapacity: true)
print(array.capacity) // 注意数组容量的变化
for i in ..< {
array.append("\(i)")
print("\(array) --- \(array.capacity)")
} // 实例化新的数组
var array2 = [String]()
array2.append("")
array2.append("") // 拼接数组
array += array2 print(array)
二.Swift中的字典
//创建字典
//@{@"key":"value"};
//Swift中创建字典和创建数组一样,用[]
//[String : NSObject]类型是用以后做ios开发中最常见的一种格式
let dict = ["name":"张三","age":] //获取value
dict["name"] //遍历字典
for key in dict.keys
{
print(dict[key])
} //利用元组类型遍历字典,会自动将字典高中的key赋值给元组中的第一个变量,将value赋值给元组中的第二个变量
//注意:第一个是key,第二个value
for (kk , vv) in dict
{
print(kk)
print(vv)
} var dict2 = [String: AnyObject]()
//新增key/vale
//如果对应的key在字典中没有,那么就会新增
dict2 = ["name":"李四","age":]
dict2["sex"]="man"
dict2 // 设置相同 key,之前的数值会被覆盖
dict2["name"] = "钱六"
dict2 //删除
dict2.removeValueForKey("name")
dict2 //合并字典
var dict3 = ["score":]
for (key,value) in dict3
{
dict2[key] = value
}
dict2 var dict4 = ["address":"厦门市"]
for (key,value) in dict4
{
dict2.updateValue(value, forKey: key)
}
dict2
三.Swift中的字符串
//Swift中的字符串
//在OC中定义字符串用@"" Swift中""
//注意点:OC中的字符串是NSString Swift中的字符串是String
//OC 中的字符串是一个对象,继承于NSObject
//Swift中的字符串是一个结构体
//Swift中的字符串的性能比OC中的高
var str: String = "张三" //拼接
var str2 = "cool" str += str2 //格式化
let num8 =
let name = "wangwu"
//目标: name = wangwu , age = 30
//在Swift中可以使用\()来拼接其他值
var str3 = "name = \(name),age = \(num8)" //09:08:07
//注意:所有的值都必须放到数组中,哪怕只有一个值也需要放到数组中
var str4 = String(format: "%02d: %02d: %02d", arguments: [,,]) //截取
//注意:在Swi中,如果需要截取字符串,建议使用OC中的字符串来截取,因为Swift中String的字符串截取方法使用起来非常复杂
//Swift中的字符串可以和OC中的字符串非常方便的进行转换
var str5: NSString = "张三 哈哈哈"
var str6 = "张三 答复发" as NSString var subStr = str5.substringWithRange(NSMakeRange(, )) //在Swift中的字符串是支持直接遍历的
var str7 = "www:baidu.com"
for c in str7.characters
{
print(c)
}
四.Swift中的函数
//Swift中的函数
/*
Swift定义函数的格式:
语义:将前面计算的结构返回值 ->返回值
func 函数名称(参数列表)->返回值
{
执行代码
}
*/ //没有返回值的参数
//如果函数没有返回值,就写Void
//如果函数没有返回值还可以简写
//1.()替代Void
//2.可以省略->() ->Void
func say() -> Void
{
print("hello world")
}
say() func say2() -> ()
{
print("hello world")
}
say2() func say3()
{
print("hello")
} //有返回值没有参数
func getNumber() -> Int
{
return
}
print(getNumber()) //有参数没有返回值
//-(void)sum:(int)a b:(int)b
//Swift2.0中,会自动将形参中的第二个参数开始的参数名成为便签,以便于提高简读性
//Swift2.0以前,不会这样
func sum(a: Int, b: Int)
{
print(a + b)
}
sum(, b: ) //添加标签,添加外部参数
//x/y称之为外部参数, a/b称之为内部参数
func sum2(x a: Int,y b: Int)
{
print (a + b)
}
sum2(x: , y: ) //有参数有返回值
func sum4(a: Int , b: Int )->Int
{
return a+b
}
print(sum4(, b: ))
Swift学习--常量.变量.数据类型的使用(二)的更多相关文章
- Swift学习--常量.变量.数据类型的使用(一)
一.Swift中的常量和变量 /* Swift 中定义常量和变量用let/var let 代表定义一个常量 var 代表定义一个变量 Swift 中代表定义常量和变量不需要写数据类型,编译器辉根据我们 ...
- Swift学习笔记--变量与常量
1.Swift是一门强类型语言,不能为变量赋予其自身数据类型之外的值: 2.声明变量使用var关键字,声明常量使用let关键字: 3.声明变量或常量时没有对其指定类型且赋予了初值,则编译器会自动推断常 ...
- Swift学习笔记 - 变量和常量
1. Mutability Objective-C offers several classes in both “regular” and mutable versions, such as NSS ...
- python常量 变量 数据类型 注释 交互 if语句
1.认识python python的创始人吉多·范罗苏姆(Guido van Rossum )龟叔在89年圣诞节开始开发python python属于解释型语言,强类型定义语言. 编译型/解释型:编译 ...
- Swift学习笔记(二)——常量与变量
这篇博客将会学习到Swift中的常量Constants和变量Variable.这是学习语言的基础.当中能够看到Swift每句后面基本都是没有:分号的,假设有加:分号的习惯,也能够加上. (1)常量声明 ...
- Swift学习(四)常量&变量&基础数据类型
常量和变量 常量: 使用let关键词来声明一个常量 所指向的是一个特定类型的值,如数字10或者字符”hello”,常量的值是不能够被二次修改的 编程时使用常量能够让代码看起来更加安全和简洁! let ...
- swift学习第一天---常量变量基础数据类型
import Foundation /** * 1.常量 变量 知识要点:常量的定义用let 变量的定义用var 常量一旦定义便不可再更改. 变量定义之后可以在定义之后的程序中任意地方进行修改. */ ...
- Swift入门学习之一常量,变量和声明
版权声明:本文为博主原创文章,未经博主允许不得转载. 转载请表明出处:http://www.cnblogs.com/cavalier-/p/6059421.html Swift入门学习之一常量,变量和 ...
- Swift学习——变量var和let常量的用法(一)
Swift中的变量var和let常量 首先介绍一下Swift中的 var 和 let (1)var 是 variable的缩写形式,是变量的意思 ,是可改变的.并非数据类型 比如: 注意每一个语句后面 ...
随机推荐
- 听声辨位识DUMP
要处理的dump成千上万,每个都用眼睛去看也太累了,不如用耳朵听好了.相信经过一段时间适应,一定可以做到凭听就解决dump分析.(逃 DumpMusican 这个小exe只需要把dump路径作为参数传 ...
- Linux sed Examples--转载
原文地址:https://www.systemcodegeeks.com/shell-scripting/bash/linux-sed-examples/?ref=dzone Sed is basic ...
- linux shell 流程控制(条件if,循环【for,while】,选择【case】语句实例 --转载
http://www.cnblogs.com/chengmo/archive/2010/10/14/1851434.html nux shell有一套自己的流程控制语句,其中包括条件语句(if),循环 ...
- url rewrite优化url的可读性
1.下载urlrewrite,官方下载地址:http://tuckey.org/urlrewrite/ 2.解压缩文件,将jar放入项目,并创建urlrewrite.xml: 3.将filter添加到 ...
- gulp-clean----gulp系列(五)
前面说过,当css,img,js出现删除操作的时候,虽然watch会监听,但是并不会删除相应文件. 现在实现clean任务,执行任务前先删除一次build目录. 先配置JS任务,设置删除目录. 在系列 ...
- linux根目录下文件夹概览
/ 根目录 /bin 存放必要的命令 /boot 存放内核以及启动所需的文件等 /dev 存放设备文件 /etc 存放系统的配置文件 /home 用户文件的主目录,用户数据存放在其主目录中 /lib ...
- Direct2D开发:从资源加载位图
转载请注明出处:http://www.cnblogs.com/Ray1024 一.概述 Direct2D使用Windows图像处理组件 (WIC) 来加载位图.从文件加载位图的方法很简单,而且网上的教 ...
- sitemesh学习笔记(1)
最近在学习web开发的时候,发现很多的页面都存在同样的导航栏,登陆栏,js,jQuery等等相同的元素.这样就感觉开发变得好臃肿啊,并且,有时候改一个元素,就要把所有包含这个元素的页面全部重新码一遍, ...
- Java魔法堂:深入正则表达式API
目录 一.前言 二.正则表达式的使用诉求 三.java.util.regex包 四.java.lang.String实例 五.最短路径实现诉求 六.Java支持的正则表达式功能语法 七.总结 八.参考 ...
- js代码中的闭包
作为一个后台开发人员了解前端非常重要,尤其是深处学校实验室做项目时前端把写好的代码直接给你,然后你在修改的时候.我经常做的就是修改前端的代码的HTML和后台交互的部分以及js的ajax部分,之后修改之 ...