在go语言中怎么设置函数参数的默认值

2023-06-01 00:00:00 函数 参数 默认值

在PHP中指定一个函数参数的默认值是很容易的,但是在go语言中,不允许使用PHP中的相同方法在函数参数中指定默认值,试图为函数参数指定默认值将导致源代码解析器抛出语法错误。


在PHP中你只需要在函数参数中指定$argument_variable = default_value

例如:

 function word_limiter($str, $limit = 100, $end_char = '…') 
 {
    ...
 }


下面的示例代码展示了在Golang中使用IF语句设置默认值的最简单方法。

示例代码:

 package main
 
 import (
         "fmt"
         "strconv"
 )
 
 func failExample(s string, i int) string {
         //设置默认值的错误方法
         //将覆盖输入参数/参数!
         s = "empty"
         i = -1
         return s + strconv.Itoa(i)
 }
 
 func okExample(s string, i int) string {
         // set default values -- the proper way
         if s == "" {
                 s = "empty"
         }
         if i == 0 {
                 i = -1
         }
     
         return s + strconv.Itoa(i)
 }
 
 func main() {
         result := failExample("abc", 123)
         fmt.Println("Fail example : ", result)
         
         result1 := okExample("abc", 123)
         fmt.Println("Ok example 1 : ", result1)
         
         result2 := okExample("", 123)
         fmt.Println("Ok example 2 : ", result2)
         
         result3 := okExample("", 0)
         fmt.Println("Ok example 3 : ", result3)
 }

输出:

Fail example : empty-1
Ok example 1 : abc123
Ok example 2 : empty123
Ok example 3 : empty-1

查看另一篇:在go语言中怎么让函数回调或从函数中传递值作为参数?

https://www.zongscan.com/demo333/96022.html

相关文章