当前位置: 首页 > 知识库问答 >
问题:

检查用户是否传递了该值,或者它是否使用了Swift函数中的默认可选参数

孙风畔
2023-03-14

这不是常见的情况,我想知道用户是传递了值还是使用了Swift中的默认值。例如

func test(firstThing: Int? = nil) {
    if firstThing.isNil {
        if // firstThing used the default value {
            print("default")
        } else {
            print("nil ingresed")
        }
     }
}

它应该具有以下行为: test() // “default” test(firstThing: nil) // “nil ingresed”

共有1个答案

贾建茗
2023-03-14

为此,您必须编写两个同名的函数。但在一个函数中设置周长,在另一个函数中设置周长,例如:-

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

        self.myFunc()

        self.myFunc("demo")


        // Do any additional setup after loading the view, typically from a nib.
    }


    func myFunc()  {
        print("empty")
    }

    func myFunc(_ str : String){
        print(str)
    }

 }
 类似资料:
  • 问题内容: 使用jQuery,如何检查选择菜单中是否有选项,如果没有,则按选择分配选项之一。 (选择是通过我刚刚继承的应用程序中的PHP函数迷宫生成的,因此当我设法解决这些问题时,这是一个快速解决方案:) 问题答案: 虽然我不确定您到底想完成什么,但是这段代码对我有用。

  • 问题内容: 是否可以为可选的通用参数提供默认值? 我正在尝试做这样的事情: 但我说错了 这只是我试图做的不可能的事吗? 问题答案: 用您完成的方式是不可能的。仅考虑上述代码,什么是类型?就像它说的那样,编译器无法弄清楚(我也不能,因为数据不存在,我也不能。) 特定问题的解决方案是重载而不是使用默认值: 但这引发了您在这里做什么的问题。您会认为应该如此。否则,您在做什么?如果不诉诸(您应该强烈避免)

  • 问题内容: 在Python中,有没有一种简单的方法来检查可选参数的值是否来自其默认值,或者是因为用户已在函数调用中显式设置了它? 问题答案: 很多答案都没有完整信息的一部分,因此我想将所有信息与我最喜欢的模式结合在一起。 默认值是一种类型 如果默认值是可变对象,那么您很幸运:您可以利用以下事实:在定义函数时,Python的默认参数将被评估一次(上一节答案末尾的更多信息) 这意味着您可以轻松地使用来

  • 我正在使用Jest测试一些实用函数。 my_util.js: 另一个例子。js: 测试调用了的最简单方法是什么?这是我当前的单元测试,它失败了。有没有一种方法可以测试函数是否以其名称调用? 结果:

  • 在Swift中处理选项的习惯用法似乎过于冗长,如果您只想在值为零的情况下提供一个默认值: 涉及不必要的代码复制,或者 这需要不是常量。 Scala的选项monad(与Swift的可选选项基本相同)的方法是: 我错过什么了吗?斯威夫特已经有了一个紧凑的方法来实现这一点吗?或者,如果做不到这一点,是否可以在可选的扩展中定义?

  • 问题内容: 我尝试使用以下方法更改默认参数值: 而所有的SQL预编译器给我的都是这个错误: 消息102,级别15,状态1,过程my_sp,第8行’(’附近的语法不正确。 我已经创建了过程。(我不确定这是否相关。)我使用的是空默认值,以后再检查它,但这似乎不合适。我可以一行完成吗? 更新:我不打算使用MSDN对存储过程参数的描述: [= default]是参数的默认值。如果定义了默认值,则可以在不为