Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将对象类转换为arrayList?JAVA_Java - Fatal编程技术网

如何将对象类转换为arrayList?JAVA

如何将对象类转换为arrayList?JAVA,java,Java,我有以下代码: ArrayList<Integer> users = new ArrayList<Integer>(); Map <String,Object> hashMap = new HashMap <String,Object> (); hashMap.put("users",user); // now I want to get users as array list hashMap.get("users")[i];//error

我有以下代码:

ArrayList<Integer> users = new ArrayList<Integer>();

Map <String,Object> hashMap = new HashMap <String,Object> ();

hashMap.put("users",user);

// now I want to get users as array list
 hashMap.get("users")[i];//error
ArrayList users=new ArrayList();
Map hashMap=newhashmap();
hashMap.put(“用户”,user);
//现在我想把用户作为数组列表
hashMap.get(“用户”)[i]//错误

如何将用户定义为数组?谢谢你

因为它是
ArrayList
而不是array,你可以这样得到它-

public static void main(String args[]) throws Exception
{
  ArrayList<Integer> users = new ArrayList<Integer>();
  users.add(5);
  users.add(10);

  Map <String,Object> hashMap = new HashMap <String,Object> ();

  hashMap.put("users",users);

  ArrayList<Integer> no =  ((ArrayList<Integer>) hashMap.get("users"));

   for (Integer integer : no) {
    System.out.println(integer);
   }
}
现在将ArrayList转换为Array-

Integer[] arr = no.toArray(new Integer[no.size()]);
List users=new ArrayList();
Map hashMap=新hashMap();
hashMap.put(“用户”,user);
....
....
....
List users=(List)hashMap.get(“用户”)//假设这是另一种方法,并且这里还没有定义“用户”
整数[]usersArray=users.toArray(新整数[users.size()]);
System.out.println(“+usersArray[i]);

请注意,这是一种暴行,您不应该将该列表存储为对象,您几乎绕过了泛型的用途。

如果您想将其作为ArrayList访问,则此代码将起作用:

List<Integer> users = new ArrayList<Integer>();
Map<String, List<Integer>> hashMap = new HashMap<String, List<Integer>> ();
hashMap.put("users",users);
hashMap.get("users");
然后您可以使用
[1]
,或者直接使用。获取(1)初始代码

或者,如果您想将hashMap用作某人有效提到的属性包,则需要进行一次转换:

((ArrayList<Integer>) hashMap.get("users"))
((ArrayList)hashMap.get(“用户”))

然后,您可以使用用户作为
ArrayList
,因为默认情况下,您可以从
HashMap
获取
对象

List<Users> usersList = new ArrayList<>();
Map<String,List<Users>> hashMap = new HashMap <> ();
hashMap.put("user",usersList);
将返回
用户的
列表
,现在您可以使用

hashMap.get("user").get(0); // to get 0th index user

1) 将映射的值类型更改为
列表
。2) User
hashMap.get(“users”).get(0)
你究竟为什么要将列表存储为一个对象???@Andreas不,它没有重复,我想转换特定的值,同意,但他已经将users作为变量,我甚至不确定他为什么要将它放在一个映射中,然后像那样从中取出。或者将其存储为对象。我真的不明白它的用途,但这应该行得通。@user2864740'mkay doneIf它是一个属性包,他应该使用一个类,除非他将它发送到JavaScript world,我怀疑他是这样。@user2864740您提出了一个有效的观点,所以我更新了我的答案,如果这是他的意图,也可以帮助他。
((ArrayList<Integer>) hashMap.get("users"))
List<Users> usersList = new ArrayList<>();
Map<String,List<Users>> hashMap = new HashMap <> ();
hashMap.put("user",usersList);
hashMap.get("user")
hashMap.get("user").get(0); // to get 0th index user