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

如何在Java中动态命名对象?

茅星华
2023-03-14
问题内容

假设我需要制作一系列String []对象。

我知道,如果我想创建一个名为“ test”的字符串数组来容纳3个字符串,我可以这样做

String []测试=新的String [3];

但是,假设我需要制作一系列这样的数组,并且希望将它们命名为1,2、3、4、5 …等等。但是我需要很多,但我不知道要需要。

我如何达到类似的效果:

for (int k=0; k=5; k++){ 
String[] k = new String[3];
}

这将创建5个名为1到5的字符串数组。基本上,我希望能够创建名称由其他函数确定的数组对象。为什么我似乎不能这样做?我只是愚蠢吗?


问题答案:

Java中没有任何“变量变量”(即带有变量名的变量),但是您可以创建Maps或Arrays来处理您的特定问题。当您遇到一个使您认为“我需要我的变量来动态更改名称”的问题时,您应该尝试考虑“关联数组”。在Java中,您可以使用Maps
获得关联数组。

也就是说,您可以保留阵列的列表,例如:

List<String[]> kList = new ArrayList<String[]>();
for(int k = 0; k < 5; k++){
   kList.add(new String[3]);
}

或者也许更接近您想要的东西,您可以使用地图:

Map<Integer,String[]> kMap = new HashMap<Integer,String[]>();
for(int k = 0; k < 5; k++){
  kMap.put(k, new String[3]);
}
// access using kMap.get(0) etc..


 类似资料:
  • 我想知道如何动态命名一个变量。 如果列表中有3个项目,那么它应该为每个项目创建3个不同的对象。如: 所以它应该是计数或诸如此类的东西。 如果一个列表中有4个项目,它应该创建4个变量。 我怎样才能做到呢? 编辑: 我试过了,但它告诉我一个错误,我不能创建一个通用的信息数组。 你能帮帮我吗?

  • 问题内容: 这个问题比什么都更能促进我的知识… Java是否具有类似于PHP生成变量名的功能?我有一个SCJA证书,我正在为SCJP学习,但从未见过,但很好奇。 PHP示例 Java是否有类似的东西?我在这里一直在阅读,一般的答案是使用我不感兴趣的HashMap,因为这不是解决实际问题的方法。我对这可能的解决方案更感兴趣?如果不是这样,那就只是尝试扩大我的知识! 谢谢贾里德 问题答案: 不,变量(

  • 问题内容: 我想问一个关于Java的问题。我有一个用户定义的对象类,学生,它有2个数据成员,名称和ID。在另一个类中,我必须声明那个object [](例如)。但是,我不知道对象数组的大小。是否可以声明对象数组但不知道大小?谢谢。 问题答案: 用户。添加新元素时,它将自动扩展。以后,您可以根据需要将其转换为数组。 作为另一个选择(不确定您到底想要什么),您可以声明字段,而不必立即对其进行初始化。

  • 问题内容: 我对JDK7中的所有这些新文件I / O类感到困惑。 假设我有一个,并且想重命名它代表的文件。再次输入a时,如何指定新名称? 注意:为什么我需要 JDK7 ?处理 符号链接 ! 问题是:我必须对名称和位置在运行时已知的文件进行处理。因此,我需要的是一种 安全的 方法(没有特殊的副作用)来创建一些旧名称路径的新名称路径。 问题答案: 您有一个路径字符串,并且需要创建一个Path实例。您可

  • 问题内容: 我想选择列名,但我不知道表结构是否会提前更改,因此它可能会发生变化,因此我不能只对带有列名的select语句进行硬编码。我也不想选择每一列。有没有简单的方法可以做到这一点? 我的想法是这两个查询的某种组合,但是我的SQL并不是那么好。 我尝试使用子选择,但没有用。似乎什么都没发生,我没有收到错误,只是没有结果 也许我需要参加吗?..无论如何,任何帮助都将是很大的,谢谢 问题答案: 试试

  • 问题内容: 如何在Java中使用动态名称分配变量?例如: 问题答案: 这不是你在Java中做事的方式。Java中没有动态变量。Java变量必须在源代码中声明。 根据要实现的目标,应使用数组、List或 Map;例如 可以使用反射来动态引用源代码中已声明的变量。但是,这仅适用于属于类成员的变量(即静态字段和实例字段)。它不适用于局部变量。