/*

* 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. HTML特殊符号对应代码

    HTML中的特殊符号所对应代码,收藏使用 符号 HTML 符号 HTML     & & < < > > ⁄ ⁄ " " ¸ ¸ ° ° ½ ...

  2. 无刷新 checkbox列表的删除

    前台 JS : function ModelDelete() { var checkvalues = null; var checValue = $("#dom1").find(& ...

  3. Visual Studio 2015 预览版 - 支持跨平台开发Android/iOS应用程序(内置安卓模拟器)

    微软最近的惊人举动真多,对普通消费者Office 移动版宣布免费,对开发者也发布了完全免费的 VS2013 社区版! 不仅如此,就连 .Net 开发框架环境也竟然「开源」并且跨平台支持 Mac 及 L ...

  4. 2013年7月份第2周51Aspx源码发布详情

    FineOffice自动化办公(OA)源码  2013-7-12 [ VS2010 ]源码描述:此源码使用fineui开发,作为村居使用的系统,所以命名为fineoffice,其实你在此基础上扩成CR ...

  5. <二叉树的基本操作(有层次遍历)>

    #include<stdio.h> #include<stdlib.h> #include<string.h> #define num 100 #define OK ...

  6. 字符串常量演示Demo

    public class StringDemo { public static void main(String[] args) { // TODO Auto-generated method stu ...

  7. UVALive 4682 XOR Sum (trie)

    题意:求一段连续的数字使得它们的异或和最大. 思路:首先利用前缀和求sum[i],这样求某段连续数字异或和最大就是求某两个j和i满足sum[i]^sum[j-1]最大,问题就变成了找两个数的异或最大. ...

  8. Ant、Maven、Gradle

    android Gradle project http://www.ibm.com/developerworks/cn/opensource/os-cn-gradle/ http://www.voge ...

  9. hadoop 中对Vlong 和 Vint的压缩方法

    hadoop 中对java的基本类型进行了writeable的封装,并且所有这些writeable都是继承自WritableComparable的,都是可比较的:并且,它们都有对应的get() 和 s ...

  10. 多比Web 3D展示(3D机房/3D监控)中间件多比Web 3D展示(3D机房/3D监控)中间件免费下载购买地址

    多比3D是实现3D场景搭建的软件开发包,可以创建广泛的3D应用,适用于高端制造.能源.国防军工.教育科研.城市规划及建筑环艺.生物医学等领域的虚拟仿真,应用于虚拟展示.虚拟设计.方案评审.虚拟装配.虚 ...