我想知道是否可以在Go中动态创建变量?
我在下面提供了一个伪代码来说明我的意思。我将新创建的变量存储在一个切片中:
func method() {
slice := make([]type)
for(i=0;i<10;i++)
{
var variable+i=i;
slice := append(slice, variablei)
}
}
在循环的最后,切片应包含变量:variable1,variable2 … variable9
Go没有动态变量。大多数语言中的动态变量都实现为Map(哈希表)。
因此,您可以在代码中包含以下地图之一,该地图可以完成您想要的操作
var m1 map[string]int
var m2 map[string]string
var m3 map[string]interface{}
这是执行您的操作的Go代码
http://play.golang.org/p/d4aKTi1OB0
package main
import "fmt"
func method() []int {
var slice []int
for i := 0; i < 10; i++ {
m1 := map[string]int{}
key := fmt.Sprintf("variable%d", i)
m1[key] = i
slice = append(slice, m1[key])
}
return slice
}
func main() {
fmt.Println(method())
}
所谓的动态变量判断指的是判断一个变量是否等于另一个变量,看如下例子: 控制器代码: $this->assign('a1', 1); $this->assign('a2', 1);
问题内容: 在eclipse中,我可以在启动配置的vm args或program args中包含以下内容: 运行此命令时,会在弹出窗口中弹出一个字符串提示,显示说明文本,并使用默认值进行准备,它使您可以轻松地在每次运行应用程序时注入属性。 我经常使用它来指定是否需要应用程序的开发实例或测试实例。您还可以选择机器特定的配置,这对于在开发人员之间共享这些启动配置很有用。 IntelliJ Idea是否
问题内容: 我想知道是否可以在Go中为未知数量的变量定义函数。 像这样 我想对任意数量的输入进行泛化。 问题答案: 据我所知,您已经了解了很多,但是语法是。见规格: 给定功能并调用 在Greeting中,将具有价值
问题内容: 对于Chrome / Safari和Firefox,具有和属性。如何使用IE9做同样的事情? 问题答案: 嗯,IE9尚未完成,但是到目前为止,您似乎必须使用SVG。我不知道IE9中是否有任何-ms- gradient或gradient支持。到目前为止,令我烦恼的另一件事是文本阴影。
我正在尝试使用柯特林 V1.2.70、Gradle V4.10.1 和 Java 11。使用 gradle 编译项目时,出现错误,指出“未知的 JVM 目标版本:11。支持的版本:1.6,1.8“。 Kotlin 编译器是否支持 Java 11(生成与 Java 11 JVM 兼容的代码)?如果是这样,如何使用渐变配置?
问题内容: 因此,我希望将其转换为这样的Java代码: JAXB是否可能? 曾经看到一些WebService Client存根生成器正在执行此操作,但也许不确定axis2 Webservice。 问题答案: 的 JAXB(JSR-222) 规范没有盖产生快速失败逻辑到域模型。现在,一种常见的做法是以注释(或XML)的形式表示验证规则,并对它们进行验证。 Bean验证(JSR-303) 对此进行了标