集合框架(06)Arrays
Arrays
Arrays:用于操作数组的工具类,里面都是静态方法
---数组变集合
1.asList:将数组变成List集合
把数组变成list集合的好处?可以使用集合的思想和方法来操作数组中的元素
注意:将数组变成集合,不可以使用集合的增删方法,因为数组的长度是固定的,如果发生了增删操作,那么会发成不支持操作异常(UnsupportedOperationException)
2.如果数组中的元素都是对象,那么变成集合时,数组中的元素就直接转成集合中的元素
如果数组中的元素都是基本数据类型,那么会将该数组作为集合中的元素存在
方法代码示例:
package Arrays;
import java.util.*; public class ArraysDemo1 { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int [] arr = {1,2,3};
System.out.println(Arrays.toString(arr));
System.out.println("-----------");
//asList将数组变成集合
String[] arr1 = {"a","cc","kkkk"};
List<String> list = Arrays.asList(arr1);
sop(list);
System.out.println("-----------"); /* 如果数组中的元素都是对象,那么变成集合时,数组中的元素就直接转成集合中的元素
如果数组中的元素都是基本数据类型,那么会将该数组作为集合中的元素存在*/
int [] arr2 = {1,2,3};
List list2 = Arrays.asList(arr2);
sop(list2);
System.out.println("-----------");
Integer[] arr3 = {4,5,6};
List list3 = Arrays.asList(arr3);
sop(list3); }
public static void sop(Object obj){
System.out.println(obj+",");
} }
集合变数组:Collection接口中的toArray方法
- 指定类型的数组到底要定义多长那?
当指定类型的数组长度小于了集合的size,那么该方法内部会创建一个新的数组,长度为集合的size
当指定类型的数组长度大于了集合的size,就不会新创建数组,而是使用传递进来的数组
所以创建一个刚刚好的数组最优
- 为什么要将集合变为数组?
为了限定对元素的操作。不需要进行增删了
package Arrays; import java.util.*; public class CollectionToArrayDemo { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
ArrayList<String> list = new ArrayList<String>();
list.add("abc1");
list.add("abc2");
list.add("abc3"); String[] arr = list.toArray(new String[list.size()]);
System.out.println(Arrays.toString(arr)); } }
集合框架(06)Arrays的更多相关文章
- Java集合框架:Arrays工具类
java.util.Arrays类能方便地操作数组,它提供的方法都是静态的.整个Arrays工具类的实现有3000+行.可是归纳总结一下可知它有下面功能(9个): 1. asList 定义: @Saf ...
- 【集合框架】JDK1.8源码分析之Collections && Arrays(十)
一.前言 整个集合框架的常用类我们已经分析完成了,但是还有两个工具类我们还没有进行分析.可以说,这两个工具类对于我们操作集合时相当有用,下面进行分析. 二.Collections源码分析 2.1 类的 ...
- JAVA基础学习之 Map集合、集合框架工具类Collections,Arrays、可变参数、List和Set集合框架什么时候使用等(4)
package com.itcast.test20140113; import java.util.ArrayList; import java.util.Arrays; import java.ut ...
- [黑马程序员] 集合框架2——Map系 & 集合工具类(Collections、Arrays)
---------------------- ASP.Net+Android+IO开发..Net培训.期待与您交流! ---------------------- 0. 集合框架按其所实现的接口, 大 ...
- Java基础---泛型、集合框架工具类:collections和Arrays
第一讲 泛型(Generic) 一.概述 1.JDK1.5版本以后出现的新特性.用于解决安全问题,是一个类型安全机制. 2.JDK1.5的集合类希望在定义集合时,明确表明你要向集合中装入那种类 ...
- java基础37 集合框架工具类Collections和数组操作工具类Arrays
一.集合框架工具类:Collections 1.1.Collections类的特点 该工具类中所有的方法都是静态的 1.2.Collections类的常用方法 binarySearch(List< ...
- Java中的集合框架-Collections和Arrays
上一篇<Java中的集合框架-Map>把集合框架中的键值对容器Map中常用的知识记录了一下,本节记录一下集合框架的两个工具类Collections和Arrays 一,Collections ...
- 浅谈集合框架六——集合扩展:Arrays工具类、集合与数组相互转换方式;
最近刚学完集合框架,想把自己的一些学习笔记与想法整理一下,所以本篇博客或许会有一些内容写的不严谨或者不正确,还请大神指出.初学者对于本篇博客只建议作为参考,欢迎留言共同学习. 之前有介绍集合框架的体系 ...
- 集合框架-工具类-Arrays方法介绍
1 package cn.itcast.p3.toolclass.arrays.demo; 2 3 import java.util.Arrays; 4 5 public class ArraysDe ...
- JavaSE_ 集合框架 总目录(15~18)
JavaSE学习总结第15天_集合框架1 15.01 对象数组的概述和使用15.02 对象数组的内存图解15.03 集合的由来及与数组的区别15.04 集合的继承体系图解15.05 Collectio ...
随机推荐
- NodeJs02 美女爬虫
note: demo代码要编号 导出模块 一个js文件就是一个模块,模块内部的所有变量,对象,方法对外界都不可见.如果想暴漏出去让别人用,就需要导出模块.语法如下: module.exports = ...
- Struts2+DAO层实现实例03——添加监听器跟踪用户行为
实例说明 根据上两次的成品进行二次加工. 加入Listener,监听用户的登陆注销情况. 所用知识说明 采用SessionBindingListener对Session进行监听. 同时,Action中 ...
- 为什么实际内存使用量已经超过了memory.soft_limit_in_bytes,但是并没有立即触发try_to_free_pages in try_charge
kswapd发起的回收过程汇总会通过cgroup的excessed树进行回收,但是这个kwap都是啥时候被唤醒呢?为啥不是mem_cgroup_soft_limit_reclaim 发现在内核在在:p ...
- Python中的返回函数与闭包
返回函数,顾名思义,就是高阶函数可以把函数作为return值返回.与闭包的关系是:闭包需要以返回函数的形式实现. 一. 返回函数 比如我们有一个求和函数: >>> def calc_ ...
- Centos 6.5 HISTSIZE更改
通过 更改 /etc/profile 中的HISTSIZE值,改完之后,执行source /etc/profile 和echo $HISTSIZE,结果还是之前的HISTSIZE值, 解决办法:执行 ...
- C# 在子窗体调用父窗体的值(转)
1.在父窗体中 public delegate void SetVisiableHandler();//定义委托类型 注意此委托定义在namespace下一级,在form类外 private void ...
- 静态编译zsummerX
下载 https://github.com/zsummer/zsummerX 下载 http://ftp.gnu.org/gnu/glibc/ ../configure --prefix=/home/ ...
- [LOJ#6259]「CodePlus 2017 12 月赛」白金元首与独舞
[LOJ#6259]「CodePlus 2017 12 月赛」白金元首与独舞 试题描述 到河北省 见斯大林 / 在月光下 你的背影 / 让我们一起跳舞吧 うそだよ~ 河北省怎么可能有 Stalin. ...
- php格式化时间
1.Y 年份的四位数 2.m 月份的数字(01-12) 3.d 一个月中的第几天(01-31) 4.w 星期几的数字表示(0-6) 5.H 24小时制(00-23) 6.i 分(00-59) 7.s ...
- UVA 11045 My T-shirt suits me
一开始就想到网络流..后来一想暴力能不能过.自己写的T了.看了别人有暴力过的. 暴力的思路就是6进制数字表示给予的衣服的数量.然后每个人的需求表示成01 的6位串然后爆搜. 网络流就建一个源一个汇 然 ...