当前位置: 首页 > 面试题库 >

为什么在此代码的函数结尾处缺少返回值?

籍光熙
2023-03-14
问题内容
func getKeyNameFromDeploymentAndSubnet(subnetType SubnetType, deploymentType DeploymentType, keyNameMap map[SubnetType]string) string {
    if (deploymentType == NoDeployment || deploymentType == PDBAWindows || deploymentType == AgentDeployment) {
        return keyNameMap[subnetType]
    }
    else if (deploymentType == AnsibleDeployment) {
        return "bar"
    }
    return "foo"
}

在第一条if语句中,我收到一个错误,即在函数错误结束时缺少返回。如果删除该else if语句,我不会收到此错误。我要去哪里错了?


问题答案:

之所以会出现此错误,是因为else语句必须}与第一个条件的结束处在同一行。

func getKeyNameFromDeploymentAndSubnet(subnetType SubnetType, deploymentType DeploymentType, keyNameMap map[SubnetType]string) string {
    if deploymentType == NoDeployment || deploymentType == PDBAWindows || deploymentType == AgentDeployment {
        return keyNameMap[subnetType]
    } else if deploymentType == AnsibleDeployment {
        return "bar"
    }
    return "foo"
}


 类似资料:
  • 函数缺少结束返回语句,返回类型不包括“undefined”。 在以下异步等待函数中,我的返回类型为

  • 问题内容: 我是一名编程初学者,对函数的返回值有疑问。 我正在学习Java。 我已经附上了我的书中具有经典选择排序功能的代码。 现在显然来自本书的代码可以正常工作。但是,主要功能中的以下三行是我的问题的基础: int [] a = new int [] {1,9,2,8,3,7,4,6​​,5}; 排序(a); if(ascending(a))System.out.println(“ Works”

  • 低票价endpoint最近刚刚开始返回JSON,一些航班段缺少用于操作的键值对。carrierCode,例如: 这是我昨天搜索时第一个结果的第二个飞行段(数据[0]。offerItems[0]。服务[0]。段[1]。飞行段): https://test.api.amadeus.com/v1/shopping/flight-offers?origin=LON 这是在上下文中: 这是已知的错误吗?写一

  • 看见http://codepen.io/anon/pen/NGqPNz CSS: JS: 滚动事件在主体元素上触发。滚动条位于body元素上,而不是html或window元素上。那么,为什么要修改文档呢。身体scrollTop或$('body')。scrollTop()返回0? 有什么方法可以检测滚动条的位置,或者我卡住了,如果我想使用高度: 100%;溢出:隐藏在html元素? 谢谢

  • 编译器声称 的末尾缺少一个返回语句。代码如下: 编译器是否正确?(Android Studio) 如果是这样,在什么情况下可以到达方法的末尾?我认为不能是并且所有枚举都包含在开关语句中,在任何情况下返回语句都会离开方法。不能是,因为方法如果结果是,则会引发异常。 如果没有,你会用< code > return null//never behind 标记方法的(希望)不可到达的一端,还是抛出一个<

  • 问题内容: 这是我的代码: 当运行它输出。我究竟做错了什么? 问题答案: 您正在调用一个没有隐式字符串表示形式的实际数组。 为了输出数组的内容,你可以使用,或功能或自定义输出,你可以使用,甚至是循环: