/*

* Arrays工具类的使用

*/

public class ArraysTest

{

public static void main(String[] args)

{

// TODO Auto-generated method stub

int [] arr = {2, 2, 4, 5, 6, 6};

//将数组中的所有元素 都打印出来

System.out.println(Arrays.toString(arr));

//asList将数组转成集合

/*

* 好处:  其实可以使用集合的方法操作数组中的元素 。

* 注意:  数组的长度是固定的,所以对于集合的增删方法是不可以使用的。。。否则发生异常。

*/

String[] strs = {"alskd", "lskdfl", "skdjflskd", "yangchao"};

List<String> list = Arrays.asList(strs);

boolean b = list.contains("yangchao");

System.out.println(b);

/*

* 如果数组中的元素时对象,那么转成集合时,直接将数组中的元素作为集合中的元素进行 集合存储

* 如果数组中的元素是基本类型 数值时,那么会将该数组作为集合中的元素进行存储。

*/

int []a = {23, 42, 35};

List list2 = Arrays.asList(a);

System.out.println(list2);

/*

* 集合转为数组。

*

* 使用的就是Collection接口中的toArray方法。

*/

List<String> list3 = new ArrayList<String>();

list3.add("yangchao");

list3.add("liuyaun");

/*toArray方法需要传入一个指定类型的数组

* 如果长度小于集合的size时,那么该法会创建一个同类型的  并和集合相同的size的数组。

* 如果该长度大于集合的size时,那么该方法就会使用指定的数组,存储集合中的元素,  其他位置默认为null。

*/

String[] str3 = list3.toArray(new String[list3.size()]);

System.out.println(Arrays.toString(str3));

}

//toString的经典实现

public static String toString(int[] a)

{

if (a == null)

return "null";

int iMax = a.length - 1;

if (iMax == -1)

return "[]";

StringBuilder b = new StringBuilder();

b.append('[');

for (int i = 0;; i++)//中间省略了长度判断  提高了效率

{

b.append(a[i]);

if (i == iMax)

return b.append(']').toString();

b.append(", ");

}

}

}

l

===================================================================

//使用可变参数

/*函数的可变参数。


其实就是一个数组,但是接收的是数组的元素。

* 自动将这些元素封装成数组,简化了调用者的书写。

*

* 注意:可变参数类型必须定义在参数列表的结尾出

*/

public static int Add(int...arr)

{

int sum = 0;

for (int i = 0; i < arr.length; i++)

{

sum+=arr[i];

}

return sum;

}

版权声明:本文为博主原创文章,未经博主允许不得转载。

Java——集合框架 工具的更多相关文章

  1. java集合框架——工具类

    一.概述 JAVA集合框架中有两个很重要的工具类,一个是Collections,另一个是Arrays.分别封装了对集合的操作方法和对数组的操作方法,这些操作方法使得程序员的开发更加高效. public ...

  2. Java 集合框架工具类

    Collections Arrays Collections 集合框架的工具类, 里面的方法都是静态的, 可以直接使用类名调用 常用方法 1. sort(List<T> list); // ...

  3. java集合框架工具类Collections,集合的操作

    1 import java.util.*; public class asList { public static void main(String args[]) { // int arr[] = ...

  4. 【JAVA集合框架之工具类】

    一.概述 JAVA集合框架中有两个很重要的工具类,一个是Collections,另一个是Arrays.分别封装了对集合的操作方法和对数组的操作方法,这些操作方法使得程序员的开发更加高效. public ...

  5. JAVA基础学习之 Map集合、集合框架工具类Collections,Arrays、可变参数、List和Set集合框架什么时候使用等(4)

    package com.itcast.test20140113; import java.util.ArrayList; import java.util.Arrays; import java.ut ...

  6. java基础37 集合框架工具类Collections和数组操作工具类Arrays

    一.集合框架工具类:Collections 1.1.Collections类的特点 该工具类中所有的方法都是静态的 1.2.Collections类的常用方法 binarySearch(List< ...

  7. (Set, Map, Collections工具类)JAVA集合框架二

    Java集合框架部分细节总结二 Set 实现类:HashSet,TreeSet HashSet 基于HashCode计算元素存放位置,当计算得出哈希码相同时,会调用equals判断是否相同,相同则拒绝 ...

  8. Java集合框架List,Map,Set等全面介绍

    Java集合框架的基本接口/类层次结构: java.util.Collection [I]+--java.util.List [I]   +--java.util.ArrayList [C]   +- ...

  9. 【集合框架】Java集合框架综述

    一.前言 现笔者打算做关于Java集合框架的教程,具体是打算分析Java源码,因为平时在写程序的过程中用Java集合特别频繁,但是对于里面一些具体的原理还没有进行很好的梳理,所以拟从源码的角度去熟悉梳 ...

随机推荐

  1. Repeater 合并单元格

    前途页面: <asp:Repeater ID="rptList" runat="server" OnPreRender="rptList_Pre ...

  2. iOS知名第三方框架和流行APP们所用的第三方框架小结

    网易新闻AppleReachabilityASIHTTPRequestEGOTableViewPullRefreshGTMNSString+HTMLMGTemplateEngineMPOAuthReg ...

  3. 关于Warn:name or service not known的解决办法

    由于之前搭建起了一个集群,然后直接将相应的配置文件复制过来 , 发现出现了 Warn:name or service not known 的问题,导致无法启动datanode. 解决的办法就是将sal ...

  4. TPLink 备份文件bin文件解析[续]

    Most routers allow to save and restore configuration from files. This is cool because you can edit t ...

  5. 使用 VisualVM 进行性能分析及调优

    VisualVM 是一款免费的性能分析工具.它通过 jvmstat.JMX.SA(Serviceability Agent)以及 Attach API 等多种方式从程序运行时获得实时数据,从而进行动态 ...

  6. python 中的json解析库

    当一个json 数据很大的时候.load起来是很耗时的.python中常见的json解析库有cjson,simplesjson,json, 初步比较了一下, 对于loads来讲 simplejson ...

  7. 监听Android CTS测试项解决方案(二)

    二,监听当前测试项是否是Accelerometer Measurement Test测试项 通过第一种方式介绍的,我们可以得到当前处于活动状态的Activity类似监听CTS测试当前的测试项.但是由于 ...

  8. BZOJ 3181 BROJ

    像我这种SB还是早点退役. #include<iostream> #include<cstdio> #include<cstring> #include<al ...

  9. CPP,MATLAB实现牛顿插值

    牛顿插值法的原理,在维基百科上不太全面,具体可以参考这篇文章.同样贴出,楼主作为初学者认为好理解的代码. function p=Newton1(x1,y,x2) %p为多项式估计出的插值 syms x ...

  10. 用python做些有意思的事——分析QQ聊天记录

    ####################################### 已更新续集,戳这里. ######################################## 是这样的,有位学 ...