java.util.Set转换为Object[]

Set<String> set = map.keySet();
String[] strs = (String[]) set.toArray();

上面的编程compile没有问题,但是运行会出现类型不匹配

		Set<String> set = map.keySet();
		String[] strs = set.toArray(new String[0]);

这样编程compile没有问题,也能正常运行

		Object[] os = new Object[]{"11","22"};
		String[] ss = (String[])os;

上面的编程也会在运行时报匹配异常,我想这就是set.toArray()强制类型转换异常的原因吧。

你可能感兴趣的:(java,编程,OS)