DahuangPhoneiOSSwift → Swift 基本类型以及运算符号


  共有8325人关注过本帖树形打印复制链接

主题:Swift 基本类型以及运算符号

帅哥哟,离线,有人找我吗?
dahuangphone
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:407 积分:4533 威望:0 精华:0 注册:2012/9/29 7:54:10
Swift 基本类型以及运算符号  发帖心情 Post By:2014/10/11 20:52:24 [只看该作者]

定义常量:let

定义变量:var

变量定义规范:

常量全部使用大写,多个单词用下划线隔开。

变量使用驼峰写法。

注释:

//   单行,选中多行,使用command+/可以同时注释多行

/*   */   多行,可以嵌套使用


表达式:

1.不指定数据类型:系统自动分配看数据类型

  • var a=2;
  • let b=3;

2.指定数据类型:指定类型,可读性好,推荐

  • var c:Int=4;
  • let d:Int=5;
  • let d:Int=5.5;  //实际值为5
  • let d:Int="5.5";   //报错

布尔型


var b:Bool=true  


注意:

1. 布尔型可以赋值非零值表示true,零表示false。但是必须要先指明Bool类型,否则就是声明了一个整型

2. if语句中的判断条件必须是一个Bool的返回值,即true或者False,不能直接使用整数来作为判断条件



运算符


===:a与b引用一个实例时返回ture,否则false,只用于类

==:比较两个引用的内容是否是同一个实例


%: 余数(取模)


Swift中,整数,负数,浮点都可以求余数,根据以下计算公式:


var array:(CGFloat,CGFloat,CGFloat,CGFloat)=(8.5 % (-2.5), -8.5 % (-2.5), 8.5%2.5, -8.5%2.5)

        

println("\(array)")


结果:(1.0, -1.0, 1.0, -1.0)


因此余数的正负与被除数保持一致,余数大小与被除数和除数的绝对值的余数相同




基本数据类型:

一般使用Int和UInt 。数据会和平台保持一致


var abc=9_600_000


var float1=9_600_000.00   //值为9600000,为了便于查看,数字可以用下划线分开书写


浮点类型的自动推断是Double类型,如果要使用Float,必须指定



各种类型数据进行计算的时候不支持隐形转换,必须强制手动转换。


如果浮点向整形转换,小数点会被忽略。



n进制表达方法:


let decimailInt=28

let binaryInt=0b11100   //0b 开头

let octalInt=0o34       //0o 开头

let hexadecimalInt=0xdd //0x开头

 

元组型:

var tuple1=(1,2,3,4)       //不带键值的定义方法

var tuple2:(Int,Int)=(2,2)       //强制类型定义方法

var tuple3=(id:12,name:333);       //带键值的定义方法

var tuple4:(id: Int, name: Int)=(id:22,name:4444);       //带键值,强制类型定义方法


var t1=tuple4.0       //无键值读取方法(带键值也可以这么读取)

var t2=tuple4.id       //有键值的读取方法




var (ta1,tb1,tc1,td1)=tuple1;       //将元祖分解成多个变量。


println("\(ta1)");


var (t11,_)=tuple2       //如果只需要其中几个,可以讲不用的变量使用下划线代替。


字符串:


var string1=""            //初始化方法一

var string2=String()            //初始化方法二


var string3:String="abc"            //强制类型方法

print(string3)


var count=countElements(string3)            //计算字符串中的字符数量

var string4="\(2)+\(3)=\(5)"            //


let sz1=["abc3.jpg","abc2.jpg","abc1.jpg","abc.bmp","abc.gif","abc.png"]            //

var sameSuffix=0;

var samePrefix=0;


var upperCaseString=""

var lowerCaseString=""


for string in sz1{

    if string.hasSuffix(".jpg"){            //查看字符串是否有指定的后缀

        sameSuffix++;

    }

    if string.hasPrefix("abc."){            //查看字符串是否有指定的前缀

        samePrefix++;

    }

upperCaseString=string.uppercaseString;           //字符串变成大写

    lowerCaseString=string.lowercaseString;           //字符串变成小写

}


 var str="abcdefg"

        

        //获取字符串的每一个字符

        for item:Character in str{

            println(item)

        }

        

        //获取字符串每一个字符的unicode编码

        

        for item in str.unicodeScalars{

            print("\(item.value)")

        }

        


定义别名:


typealias Abc=Int   //typealias和typedef功能相似

var abc:Abc=2


区间值 ...和..<


0...2  包括 0,1,2

0..<2  包括 0,1


使用场景

for i in 0...5{   //注意,这里的 i 不需要var

     print("\(i)")

}

        

for i in 0..<5{

     print("\(i)")

}


 回到顶部