java中如何map转换为数组

Python018

java中如何map转换为数组,第1张

map.put("123",newfloat[]{11,11,11})

按照已有的代码,存进去的时候,new一个float数组,直接传值就可以。

Map sMap = new HashMap<String[], String>()

String[] strs = {"1","2"}

sMap.put(strs, "map的键值可以为数组")

System.out.println(sMap.get(strs))//---->map的键值可以为数组。

扩展资料:

一个数组中的所有元素具有相同的数据类型(在C、C++、Java、pascal中都这样。但也并非所有涉及数组的地方都这样,比如在Visual Foxpro中的数组就并没这样的要求)。当然,当数据类型为 Variant 时,各个元素能够包含不同种类的数据(对象、字符串、数值等等)。可以声明任何基本数据类型的数组,包括用户自定义类型和对象变量。

参考资料来源:百度百科-数组

1、数组特点高效、保存基本类型,集合带array的底层由数组实现,还有一部分由链表或者树

2、数组大小固定(巨大缺点,内存中一定连续),集合各种实现吧!

3、数组只能放一种类型,集合不考虑泛型可以存很多类型。

4、集合放原始类型其实是通过装箱拆箱来实现的,说白了以前原生类型只能用数组,现在集合也可以了。因为这个改进,所以现在基本上除了性能外,均推荐使用集合。

import java.util.*

public class Exam

{

public static void main(String[] args)

{

Map<String,String>m=new HashMap<String,String>()

String k

for(int i=1i<=3i++)

{

for(int j=1j<=3j++)

{

k=String.format("%d-%d",i,j)

m.put(k,"(空)")

System.out.printf("%s %s¡¢",k,m.get(k))

}

System.out.println()

}

System.out.println()

m.put("2-2","(满)")

m.put("3-3","(满)")

for(int i=1i<=3i++)

{

for(int j=1j<=3j++)

{

k=String.format("%d-%d",i,j)

System.out.printf("%s %s¡¢",k,m.get(k))

}

System.out.println()

}

}

}