16.3 Swift可选链的返回值

2023-12-19 06:48
文章标签 swift 返回值 16.3 可选链

本文主要是介绍16.3 Swift可选链的返回值,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        /**

         16.3-可选链的返回值

         

         通过可选链来调用相应的属性和方法

         这个属性的值  这个方法的返回值

         

         通过可选链调用取得的返回值会被包装成一个可续类型数据。

         可选链有可能失效 返回nil,也有可能成功 返回值也会包装成可选值。

         */

        

        

        class Person  {

            var name = ""

            func whoami() -> String {

                print("My name is \(name)")

                return name

            }

            

            init(name: String) {

                self.name = name

            }

        }

        

        var p1: Person = Person.init(name: "Tom")

        p1.name = "zhangsan"

        p1.whoami()

        

        

        

        var p0: Person?

        

        p0 = p1

        

        

        print(p0?.name)

        print(p0!.name)

        /**

         打印出

         Optional("zhangsan")   // 也就是我们通过可选链调用属性或者方法的返回值是可选数据。

         zhangsan

         */


        

        let t: String? = p0?.name

        let t1: String = p0!.name

        

        

        print("------------------------->")

        print(p0?.whoami())

        print(p0!.whoami())

        /**

         My name is zhangsan

         Optional("zhangsan")

         My name is zhangsan

         zhangsan

         */

        


这篇关于16.3 Swift可选链的返回值的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/511260

相关文章

java 进程 返回值

实现 Callable 接口 与 Runnable 相比,Callable 可以有返回值,返回值通过 FutureTask 进行封装。 public class MyCallable implements Callable<Integer> {public Integer call() {return 123;}} public static void main(String[] args

理解String的compareTo()方法返回值

compareTo()的返回值是整型,它是先比较对应字符的大小(ASCII码顺序), 如果第一个字符和参数的第一个字符不等,结束比较,返回他们之间的差值。 如果第一个字符和参数的第一个字符相等,则以第二个字符和参数的第二个字符作比较, 以此类推,直至比较的字符或被比较的字符有一方全比较完,这时就比较字符的长度。 我们可以通过阅读源码加深对compareTo()的理解: comp

Swift知识点---RxSwift学习

1. 什么是RxSwift RxSwift是Swift函数响应式编程的一个开源库,由Github的ReactiveX组织开发、维护 RxSwift的目的是:让数据/事件流 和 异步任务能够更方便的序列化处理,能够使用Swift进行响应式编程 RxSwift本质上还是观察者模式,并且是一个响应式的,并且可以序列化的 观察者模式 观察者模式包括:KVO、通知等 爸爸妈妈照看观察宝宝 其中,

王立平-- Swift

Swift是供iOS和OS X应用编程的新编程语言,基于C和Objective-C,而却没有C的一些兼容约束。Swift采用了安全的编程模式和添加现代的功能来是的编程更加简单、灵活和有趣。界面则基于广受人民群众爱戴的Cocoa和Cocoa Touch框架,展示了软件开发的新方向。     Swift已经存在了多年。Apple基于已有的编译器、调试器、框架作为其基础架构。通过ARC(Au

MySql 调用带返回值的函数

话不多说,直接上代码 创建函数 CREATE DEFINER = PROCEDURE `proc_ton_lens `(IN `p_type` int(4), IN `p_weight` DECIMAL(10,2), IN `p_volumn` DECIMAL(10,2), OUT `p_ton` DECIMAL(10,2), OUT `p_lens` DECIMAL(10,2))COMMEN

The `XXXUITests [Debug]` target overrides the `ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES` build......

出现的警告: [!] The `ColorInHeartUITests [Debug]` target overrides the `ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES` build setting defined in `Pods/Target Support Files/Pods-ColorInHeart-ColorInHeartUITests/Po

swift快捷键大全

1. 文件 CMD + N: 新文件 CMD + SHIFT + N: 新项目 CMD + O: 打开 CMD + S: 保存 CMD + SHIFT + S: 另存为 CMD + W: 关闭窗口 CMD + SHIFT + W: 关闭文件 2. 编辑 CMD + [: 左缩进 CMD + ]: 右缩进 CMD + CTRL + LEFT: 折叠 CMD + CTRL + RIGHT:

自学Swift之打印输出

所有编程语言都有的函数打印输出: print()         // 不换行输出 println()      // 换行输出       print 和 println 函数可以直接打印基本类型 var num = 10 println("hello " + (String)num)   // 方式1: 其他类型同String输出的时候需要强转 printl

谈谈函数返回值为什么不能重载

一、函数的定义:       函数将有效的输入值变换为唯一的输出值,同一输入总是对应同一输出。       计算机本质是对抽象数学公式的具体实现,并以此具体实现来解决现实生活中的实际问题。 注:wiki百科对 “函数” 的定义如图,图比较大,请点击打开详情,左右拖动查看 全部内容。 二、悖论      反过来设想一下,如果返回值的类型 能用来 重载,那么对于相同的输入值,程序怎么决定

【日常记录-Java】SpringBoot中使用无返回值的异步方法

Author:赵志乾Date:2024-09-05Declaration:All Right Reserved!!! 1. 简介         在SpringBoot中,使用@Async注解可以很方便地标记一个方法为异步执行。好处是调用者无需等待这些方法完成便可继续执行其他任务,从而提高应用程序的响应性和吞吐量。 2. 步骤   2.1 启用异步支持         在配置类上添加