0

我想知道是否可以在循环中声明一个像“vx”这样的变量,并让它每次循环时,x 的值都会改变。这样当循环运行 5 次时,变量将被命名为 v1、v2、v3、v4、v5。

4

3 回答 3

1

基本上,您不能在循环中声明具有不同变量名的变量,因为 Java 是一种静态类型语言。

在具有不同名称的循环内声明(初始化)变量是没有意义的。毕竟,如果变量的范围就在循环内,变量就会超出范围并被销毁(垃圾收集)。

如果要初始化类变量,可以尝试 Reflection API,但出于多种原因应避免使用。

于 2013-09-17T18:15:16.993 回答
0

这当然是不可能的,因为 Java 是静态类型的。变量必须在编译时可用,但在运行时执行循环。

于 2013-09-17T18:15:02.530 回答
0

你不能在java中动态命名变量。但你可以做一些事情如下

   List<String> dataList=new ArrayList<>(Arrays.asList("a","b"));
   Map<String,String> map=new HashMap<>();
   String preFix="var";
   char postFix='1';
   for(String i:dataList){
       map.put(preFix+postFix,i);
       postFix++;
   }
    System.out.println(map);

输出:

  {var1=a, var2=b}
于 2013-09-17T18:18:19.097 回答