美文网首页
swift学习记录

swift学习记录

作者: 掉了西红柿皮_Kee | 来源:发表于2020-07-05 10:22 被阅读0次
  1. 关于不同数据类型之间的比较
//执行以下代码则会直接报错
let a = 5
let b: Float = 8
if a < b
{
    print("succeed")
}

swift:4:6: error: binary operator '<' cannot be applied to operands of type 'Int' and 'Float'
因为在初始化的时候,a的初始值为5,虽然未显式的指定Int类型,但由于初始化的数据类型为Int,因此a的数据类型可推断为Int。而b的数据类型被显式的指定为Float,虽然初始值写做 8,但其类型被强制转换。因此不同类型之间无法进行比较。

  1. 关于if表达式
// 输出结果: "hello, 22453"
var name: String? = "22453"
var greeting = "hello"
if let n = name
{
    greeting = "hello, \(n)"
}else
{
    greeting = "hello, another option"
}
print(greeting)

注意if的表达式,if let n=name。在我的理解里,他应该等价于先判断name是否为nil,如果不是nil则执行let n = name
如果将代码直接写成先赋值let n = name,之后执行判断语句if n {},然后开始报错:
swift:15:4: error: optional type 'String?' cannot be used as a boolean; test for '!= nil' instead if n ^ ( != nil)
按照提示,判断语句后面需要补充的是一个布尔表达式即if n != nil,而 n并不满足语法条件,因此报错。

相关文章

  • 学习Swift

    LearnSwiftEasily 用心记录自己学习Swift的心得体会,让学习变得简单与快乐! Swift基础语法...

  • Swift 学习笔记

    初级Swift 记录初级swift学习笔记 1.在Swift中,当需要导入类库的时候,直接输入import + 类...

  • swift自用

    学习swift的网站 https://www.cnswift.org ;学习记录https://objective...

  • swift学习记录

    !比?效率要高我的理解是!使用时对象必须存在知道你是什么,也知道你存在,直接用就好了?使用时对象可以为空我不知道你...

  • Swift学习记录

    1.实现输入手机号码间隔显示

  • Swift学习记录

    只读属性 {get} 表示只读的意思。 将string 转为NSString 类型 查了一个api是NSStrin...

  • 记录Swift学习

    Playground是什么?从Xcode6开始出现(Swift开始出现) 翻译为:操场/游乐场 对于学习Swift...

  • Swift学习记录

    官方社区objccn swift3相关文章:迁移程序到 Swift 3.0Swift 3.0开发者预览版(第一版)...

  • swift学习记录

    Swift数据类型 1.基础数据类型:整形Int、浮点数Double和Float、布尔类型Bool,字符串类型St...

  • swift学习记录

    关于不同数据类型之间的比较 swift:4:6: error: binary operator '<' canno...

网友评论

      本文标题:swift学习记录

      本文链接:https://www.haomeiwen.com/subject/szgmqktx.html