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

Java:将对象转换为数组类型

穆阳炎
2023-03-14
问题内容

我正在使用返回“对象”类型的普通对象的Web服务。调试清楚地表明此对象中存在某种Array,因此我想知道如何将“
Object”转换为Array(或类似对象)?

我尝试了以下方法:

Collection<String> arr = (Collection<String>) values;
Vector<String> arr = (Vector<String>) values;
ArrayList<String> arr = (ArrayList<String>) values;

但是没有任何效果。我总是得到一个InvocationTargetException。

我究竟做错了什么?

编辑

可悲的是,我不得不删除指向显示Eclipse调试器输出的图像的链接,因为它不再可用。请不要奇怪,为什么在答案中提到的图像不再存在。


问题答案:

您的values对象显然是Object[]一个String[]包含的值。

String[] stringValues = (String[])values[0];


 类似资料:
  • 问题内容: 转换的最佳方法是什么: 至: 问题答案: ECMAScript 6引入了易于填充的内容: 该方法用于将所有可枚举的自身属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。 数组的自身属性不会被复制,因为它无法枚举。 另外,您可以使用ES6 传播语法来达到相同的结果:

  • 问题内容: 如果你有一个具有原始类型(例如Byte,Integer,Char等)的Java对象数组。有没有一种巧妙的方法可以将其转换为原始类型的数组?特别是可以做到这一点,而不必创建新的数组并遍历内容。 因此,例如 将其转换为最简洁的方法是什么 不幸的是,在Hibernate和我们无法控制的某些第三方库之间进行接口连接时,这是我们经常要做的事情。看来这是一个很普通的操作,所以如果没有捷径,我会感到

  • 我正在创建一个由数组支持的泛型类型堆栈。当我尝试创建泛型类型数组时,Java不允许我这样做。有人告诉我,我必须创建一个类型为Object的数组,并将其转换为泛型类型。我已经将对象数组转换为类型,但如何处理Java不断给我的未检查类型错误? 这就是我目前所处的位置。 更新:我正在创建一个对象数组,然后在方法的末尾将返回类型转换为T类型。

  • 例如:Date值为:“dateCollected”:fri Jul 07 00:00:00 IST 1989, 但它只服用星期五而不是整个日期。

  • 问题内容: 只是为了进行回顾,有人可以快速解释一下是什么阻止了它的工作(在编译时): …以及使这种方式起作用的原因: 我不清楚使这种情况发生的机制(或其他任何作用)。 问题答案: 由于创建对象的数组,你不能让成铸造它而已。 创建一个数组。 是的,这是Collections类的缺点,也是将泛型引入Java的一种缺点。您希望可以返回E数组,但不会。 关于调用的有趣的事情:您不必使“ a”数组足够大,因

  • 问题内容: 转换的最佳方法是什么: 至: 问题答案: ECMAScript 6引入了易于填充的内容: 该方法用于将所有可枚举的自身属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。 数组的自身属性不会被复制,因为它无法枚举。 另外,您可以使用ES6 传播语法来达到相同的结果: