相关疑难解决方法(0)

如何在Java中将对象数组转换为字符串数组

我使用以下代码将Object数组转换为String数组:

Object Object_Array[]=new Object[100];
// ... get values in the Object_Array

String String_Array[]=new String[Object_Array.length];

for (int i=0;i<String_Array.length;i++) String_Array[i]=Object_Array[i].toString();
Run Code Online (Sandbox Code Playgroud)

但我想知道是否有另一种方法可以做到这一点,例如:

String_Array=(String[])Object_Array;
Run Code Online (Sandbox Code Playgroud)

但这会导致运行时错误: Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;

这样做的正确方法是什么?

java arrays string

236
推荐指数
7
解决办法
40万
查看次数

.toArray(new MyClass [0])或.toArray(new MyClass [myList.size()])?

假设我有一个ArrayList

ArrayList<MyClass> myList;
Run Code Online (Sandbox Code Playgroud)

我想打电话给阿瑞,是否有使用性能的原因

MyClass[] arr = myList.toArray(new MyClass[myList.size()]);
Run Code Online (Sandbox Code Playgroud)

过度

MyClass[] arr = myList.toArray(new MyClass[0]);
Run Code Online (Sandbox Code Playgroud)

我更喜欢第二种风格,因为它不那么冗长,我认为编译器会确保空数组不会真正被创建,但我一直想知道这是不是真的.

当然,在99%的情况下,它不会以某种方式产生影响,但我希望在我的普通代码和优化的内部循环之间保持一致的风格......

java performance coding-style

147
推荐指数
4
解决办法
7万
查看次数

Collection.toArray()和Collection.toArray(Object obj [])之间的区别

根据java doc的toArray()返回包含此集合中所有元素的数组。

和toArray(Object obj [])。返回包含此集合中所有元素的数组;返回数组的运行时类型是指定数组的运行时类型。

第一个toArray()我了解,但是第二个toArray(Object obj [])我无法理解。请举例说明。

java arrays

4
推荐指数
1
解决办法
2520
查看次数

标签 统计

java ×3

arrays ×2

coding-style ×1

performance ×1

string ×1