本篇内容介绍了“Java数组内置函数toArray的应用方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
java.util.List中的toArray函数
java.util.List<E> @NotNull public abstract <T> T[] toArray(@NotNull T[] a) Returns an array containing all of the elements in this list in proper sequence (from first to last element); the runtime type of the returned array is that of the specified array. If the list fits in the specified array, it is returned therein. Otherwise, a new array is allocated with the runtime type of the specified array and the size of this list. If the list fits in the specified array with room to spare (i.e., the array has more elements than the list), the element in the array immediately following the end of the list is set to null. (This is useful in determining the length of the list only if the caller knows that the list does not contain any null elements.) Like the toArray() method, this method acts as bridge between array-based and collection-based APIs. Further, this method allows precise control over the runtime type of the output array, and may, under certain circumstances, be used to save allocation costs. Suppose x is a list known to contain only strings. The following code can be used to dump the list into a newly allocated array of String: String[] y = x.toArray(new String[0]); Note that toArray(new Object[0]) is identical in function to toArray(). Overrides: toArray in interface Collection Params: a – the array into which the elements of this list are to be stored, if it is big enough; otherwise, a new array of the same runtime type is allocated for this purpose. Type parameters: <T> – the runtime type of the array to contain the collection Returns: an array containing the elements of this list Throws: ArrayStoreException – if the runtime type of the specified array is not a supertype of the runtime type of every element in this list NullPointerException – if the specified array is null External annotations: Abstract method toArray: @org.jetbrains.annotations.NotNull Parameter a: @org.jetbrains.annotations.NotNull
翻译
java.util.List @NotNull
public abstract T[] toArray(@NotNull T[] a)
返回一个包含列表中所有元素的数组(从第一个元素到最后一个元素);返回数组的运行时类型是指定数组的运行时类型。如果列表适合指定的数组,则在其中返回该列表。否则,将使用指定数组的运行时类型和该列表的大小分配一个新数组。
如果列表适合指定的有空间的数组(即,数组的元素比列表的多),则紧挨着列表末尾的数组中的元素被设为null。(只有当调用者知道列表不包含任何空元素时,这在确定列表的长度时才有用。)
与toArray()方法一样,该方法充当基于数组和基于集合的api之间的桥梁。此外,这种方法允许精确控制输出数组的运行时类型,在某些情况下,可以用于节省分配成本。
假设x是一个只包含字符串的列表。下面的代码可以用来将列表转储到一个新分配的String数组中:
String[] y = x.toArray(new String[0]);
注意toArray(新对象[0])在函数中与toArray()相同。
覆盖:
toArray在接口集合
参数:
A -如果列表足够大,则存放列表中所有元素的数组;否则,将为此目的分配相同运行时类型的新数组。
类型参数:
-包含集合的数组的运行时类型
返回:
一个包含此列表元素的数组
抛出:
如果指定数组的运行时类型不是这个列表中每个元素的运行时类型的超类型,则会产生ArrayStoreException异常
NullPointerException -如果指定的数组为空
外部注释:
抽象方法:@org.jetbrains.annotations.NotNull
参数:@org.jetbrains.annotations.NotNull
public static void main(String[] args) { List<Double> asList = new ArrayList<Double>() { //使用匿名内部类来初始化。 { add(35.6); add(3.2); add(90.); } }; Double []sumVenderNumArray = new Double[]{333333.34,999.9,93.45,23.4,33.}; Double [] sumVenderNumNum = asList.toArray(sumVenderNumArray); System.out.println(JSONObject.toJSONString(sumVenderNumNum)); }
运行结果:
“Java数组内置函数toArray的应用方法”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。