for-loop - 在 golang 中编写 while (for) 的更好方法
问题描述
我正在研究一个 for 在 Go 中的 while 循环,如下面的代码所示
ele = path.Dir(str)
for ele != "." {
functionA()
ele = path.Dir(ele)
if ele == "." {
functionA()
functionB()
}
}
如您所见,在上面的代码中,我根据 while (for) 内的条件调用了 functionA 两次
有没有更好更清洁的方法来做到这一点?
解决方案
这是执行相同任务的稍微不同的方式。
更新:更新答案以反映新要求。
ele := path.Dir(str)
if ele == "." {
return
}
for ele != "." {
functionA()
ele = path.Dir(ele)
}
functionA()
functionB()
游乐场: https: //play.golang.org/p/KbIH7s45aFR
推荐阅读
- jquery - DataTables.net 宽度不适用于排序
- php - Firebase (FCM) 响应弄乱了我的响应
- elasticsearch - Elasticsearch 映射是否受源控制?如果是这样,怎么做?
- ubuntu - 我在哪里可以找到我的 redis 服务器日志 Ubuntu 16.04
- json - 如何获取每个国家/地区的地图标记数量 - ReactJS
- cloud-foundry - CF 如何列出我项目根目录下的所有文件
- xaml - 绑定字符串格式
- docker - 无法解析主机:git
- javascript - 邮件对象将 inlineImages 添加为 BLOB
- apache-camel - Camel XML 使用 XPath 分割多个元素