先来看下面这段程序

  Collection collect= new ArrayList();
      collect.add("小黑");
      collect.add("小白");
      collect.add("小红");

在上面程序中我创建了一个集合放置了3个String类型的值

接下来我们看官方对toArray(Object array[])这个方法的描述

1.如果array的大小与匹配的元素的个数相等,它们被返回到array

程序解释:

  String[] arrs = new String[3];
   String[] copys = (String[])collect.toArray(arrs);

   值:arrs:[小黑, 小白, 小红]

    copys:[小黑, 小白, 小红]

2.如果array的大小比匹配元素的个数小,将分配并返回一个所需大小的新数组

程序解释:

  String[] arrs = new String[2];
   String[] copys = (String[])collect.toArray(arrs);

   值:arrs:[[null, null]]

    copys:[小黑, 小白, 小红]

3.如果array的大小比匹配元素的个数大,在数组中,在类集元素之后的单元被置为null

程序解释:

  String[] arrs = new String[5];
   String[] copys = (String[])collect.toArray(arrs);

   值:arrs:[小黑, 小白, 小红, null, null]

    copys:[小黑, 小白, 小红, null, null]

4.如果任一类集元素的类型都不是array的子类型,则引发一个ArrayStoreException异常

程序解释:

    collect.add(1);
    String[] arrs = new String[5];
    String[] copys = (String[])collect.toArray(arrs);

  

抛出异常:java.lang.ArrayStoreException

java关于ArrayList中toArray方法的使用的更多相关文章

  1. 【Java】ArrayList 的 toArray() 方法抛出 ClassCastException 异常

    第一次用这个方法,结果冒出个莫名其妙的异常来: String[] names = (String[]) mTags.toArray(); 结果会抛出 java.lang.ClassCastExcept ...

  2. 【转载】 C#中ArrayList使用ToArray方法转换为数组

    在C#的编程开发中,ArrayList集合是一个常用的非泛型类集合,可以使用ArrayList中的ToArray方法将ArrayList集合对象转换为数组,ToArray方法有2个重载形式,其一为vi ...

  3. Java删除ArrayList中的重复元素

    Java删除ArrayList中的重复元素的2种方法 ArrayList是Java中最常用的集合类型之一.它允许灵活添加多个null元素,重复的元素,并保持元素的插入顺序.在编码时我们经常会遇到那种必 ...

  4. 如何使用 Java 删除 ArrayList 中的重复元素

    如何使用 Java 删除 ArrayList 中的重复元素 (How to Remove Duplicates from ArrayList in Java) Given an ArrayList w ...

  5. 【转载】C#中ToArray方法将List集合转换为对应的数组

    在C#的List集合操作中,可以使用List集合自带的ToArray方法来将List集合转换为对应的Array数组元素.ToArray方法的签名为T[] ToArray(),存在于命名空间System ...

  6. java——ArrayList中常见方法用法

    package com.xt.list; import java.util.ArrayList; import java.util.Iterator; import java.util.List; p ...

  7. 如何在java中用Arraylist中实现冒泡排序的问题

    众所周知,冒泡排序法在一般数组中就3步, if(a<b){ temp=a; a=b; b=temp; } 然而,在集合中就不是简单的交换一下了,因为交换之后,必须保证新的值被重新设置到集合中去. ...

  8. java List集合中contains方法总是返回false

    ArrayList的contains方法 java 今天在用ArrayList类的caontains方法是遇到了问题,我写了一个存放User类的ArrayList 但在调用list.contains( ...

  9. Java继承多态中的方法访问权限控制

    java中的方法天生具有继承多态特性,这点与C++有很大不同(需要在父类方发上加virtual关键字),但用起来确实方便了许多. 最简单的继承多态 声明一个接口BaseIF,只包含一个方法声明 pub ...

随机推荐

  1. Xcode 快速开发 代码块

    Xcode的代码片段(Code Snippets)创建自定义的代码片段,当你重用这些代码片段时,会给你带来很大的方便. 常用的: 1.strong:@property (nonatomic,stron ...

  2. 1280*720P和1920*1080P的视频在25帧30帧50帧60帧时的参数

  3. JDBC URL FOR ORACLE, wrong or correct, how do you know? ORA-12505

    JDBC URL FOR ORACLE, wrong or correct, how do you know? INSTANCE SID by ":" jdbc:oracle:th ...

  4. Tor网络突破IP封锁,爬虫好搭档【入门手册】

    本文地址:http://www.cnblogs.com/likeli/p/5719230.html 前言 本文不提供任何搭梯子之类的内容,我在这里仅仅讨论网络爬虫遇到的IP封杀,然后使用Tor如何对抗 ...

  5. setInterval的停止与启动

    最近写代码,需要停止interval之后再重新启动,开始使用代码如下,发现无法重新启动 function func(){console.log("print")} //定时任务 v ...

  6. BitHacks

    备份文件时看到的.我以前居然下过这东西. 2016-12-4 12:05:52更新 纯文本格式真棒.假如使用word写的我能拷过来格式还不乱?? Markdown真好. Bit Hacks By Se ...

  7. mysql 字符串 日期互转

    一.字符串转日期 下面将讲述如何在MySQL中把一个字符串转换成日期: 背景:rq字段信息为:20100901 1.无需转换的: SELECT * FROM tairlist_day WHERE rq ...

  8. HDU 1848 SG函数博弈

    Fibonacci again and again Problem Description   任何一个大学生对菲波那契数列(Fibonacci numbers)应该都不会陌生,它是这样定义的:F(1 ...

  9. java中的throw与throws的区别

    什么时运行时异常?什么是非运行时异常? 通俗的讲: 运行时异常:就是编译通过,运行时就崩了,比如数组越界. 非运行时异常:就是编译不通过,这时就得必须去处理了.不然就没法运行了. 全面的讲: Thro ...

  10. Maven 命令

    win7环境下,Maven跳过测试编译项目的命令: 首先,在cmd环境下执行cd命令移动到需要编译的项目的home目录,然后执行命令:mvn    install -Dmaven.test.skip= ...