Java——集合框架 工具
* 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——集合框架 工具的更多相关文章
- java集合框架——工具类
一.概述 JAVA集合框架中有两个很重要的工具类,一个是Collections,另一个是Arrays.分别封装了对集合的操作方法和对数组的操作方法,这些操作方法使得程序员的开发更加高效. public ...
- Java 集合框架工具类
Collections Arrays Collections 集合框架的工具类, 里面的方法都是静态的, 可以直接使用类名调用 常用方法 1. sort(List<T> list); // ...
- java集合框架工具类Collections,集合的操作
1 import java.util.*; public class asList { public static void main(String args[]) { // int arr[] = ...
- 【JAVA集合框架之工具类】
一.概述 JAVA集合框架中有两个很重要的工具类,一个是Collections,另一个是Arrays.分别封装了对集合的操作方法和对数组的操作方法,这些操作方法使得程序员的开发更加高效. public ...
- JAVA基础学习之 Map集合、集合框架工具类Collections,Arrays、可变参数、List和Set集合框架什么时候使用等(4)
package com.itcast.test20140113; import java.util.ArrayList; import java.util.Arrays; import java.ut ...
- java基础37 集合框架工具类Collections和数组操作工具类Arrays
一.集合框架工具类:Collections 1.1.Collections类的特点 该工具类中所有的方法都是静态的 1.2.Collections类的常用方法 binarySearch(List< ...
- (Set, Map, Collections工具类)JAVA集合框架二
Java集合框架部分细节总结二 Set 实现类:HashSet,TreeSet HashSet 基于HashCode计算元素存放位置,当计算得出哈希码相同时,会调用equals判断是否相同,相同则拒绝 ...
- Java集合框架List,Map,Set等全面介绍
Java集合框架的基本接口/类层次结构: java.util.Collection [I]+--java.util.List [I] +--java.util.ArrayList [C] +- ...
- 【集合框架】Java集合框架综述
一.前言 现笔者打算做关于Java集合框架的教程,具体是打算分析Java源码,因为平时在写程序的过程中用Java集合特别频繁,但是对于里面一些具体的原理还没有进行很好的梳理,所以拟从源码的角度去熟悉梳 ...
随机推荐
- HTML特殊符号对应代码
HTML中的特殊符号所对应代码,收藏使用 符号 HTML 符号 HTML & & < < > > ⁄ ⁄ " " ¸ ¸ ° ° ½ ...
- 无刷新 checkbox列表的删除
前台 JS : function ModelDelete() { var checkvalues = null; var checValue = $("#dom1").find(& ...
- Visual Studio 2015 预览版 - 支持跨平台开发Android/iOS应用程序(内置安卓模拟器)
微软最近的惊人举动真多,对普通消费者Office 移动版宣布免费,对开发者也发布了完全免费的 VS2013 社区版! 不仅如此,就连 .Net 开发框架环境也竟然「开源」并且跨平台支持 Mac 及 L ...
- 2013年7月份第2周51Aspx源码发布详情
FineOffice自动化办公(OA)源码 2013-7-12 [ VS2010 ]源码描述:此源码使用fineui开发,作为村居使用的系统,所以命名为fineoffice,其实你在此基础上扩成CR ...
- <二叉树的基本操作(有层次遍历)>
#include<stdio.h> #include<stdlib.h> #include<string.h> #define num 100 #define OK ...
- 字符串常量演示Demo
public class StringDemo { public static void main(String[] args) { // TODO Auto-generated method stu ...
- UVALive 4682 XOR Sum (trie)
题意:求一段连续的数字使得它们的异或和最大. 思路:首先利用前缀和求sum[i],这样求某段连续数字异或和最大就是求某两个j和i满足sum[i]^sum[j-1]最大,问题就变成了找两个数的异或最大. ...
- Ant、Maven、Gradle
android Gradle project http://www.ibm.com/developerworks/cn/opensource/os-cn-gradle/ http://www.voge ...
- hadoop 中对Vlong 和 Vint的压缩方法
hadoop 中对java的基本类型进行了writeable的封装,并且所有这些writeable都是继承自WritableComparable的,都是可比较的:并且,它们都有对应的get() 和 s ...
- 多比Web 3D展示(3D机房/3D监控)中间件多比Web 3D展示(3D机房/3D监控)中间件免费下载购买地址
多比3D是实现3D场景搭建的软件开发包,可以创建广泛的3D应用,适用于高端制造.能源.国防军工.教育科研.城市规划及建筑环艺.生物医学等领域的虚拟仿真,应用于虚拟展示.虚拟设计.方案评审.虚拟装配.虚 ...