1 package cn.itcast.p3.toolclass.arrays.demo;
2
3 import java.util.ArrayList;
4 import java.util.Arrays;
5 import java.util.List;
6
7 public class ArraysDemo {
8 //数组转成集合
9 public static void main(String[] args) {
10 // TODO Auto-generated method stub
11 /*
12 * Arrays:集合框架的工具类。里面的方法都是静态的。
13 *
14 *
15 *
16 */
17
18 // int[] arr = {3,1,5,6,3,6};
19 //
20 // System.out.println(arr);//[I@2f92e0f4
21 // System.out.println(Arrays.toString(arr));
22
23
24 // demo_1();
25
26 demo_2();//数组转成集合Arrays.asList
27 }
28
29 private static void demo_2() {
30 // TODO Auto-generated method stub
31 /*
32 * 如果数组中的元素是对象比如String,那么转成集合时,直接将数组中的元素作为集合中的元素进行集合存储。
33 *
34 * 如果数组中的元素是基本类型数值比如int,那么会将该数组作为集合中的元素进行存储。
35 */
36 int[] arr = {31,11,51,61};
37
38 List<int[]> list = Arrays.asList(arr);
39
40 System.out.println(list);//[[I@2f92e0f4]
41 }
42
43 /**
44 *
45 */
46 public static void demo_1() {
47 /*
48 * 重点:List asList(数组)将数组转成集合。
49 *
50 * 好处:其实可以使用集合的方法操作数组中的元素
51 * 注意:数组的长度是固定的,所以对于集合的增删方法是不可以使用的否则会发生java.lang.UnsupportedOperationException
52 */
53 String[] arr = {"abc","haha","xixi"};
54
55 boolean b = myContains(arr, "xixi");
56 System.out.println("contains:"+b);
57
58 List<String> list = Arrays.asList(arr);
59 boolean b1 = list.contains("xixi");
60 System.out.println("list contains:="+b1);
61 list.add("hiahaia");//java.lang.UnsupportedOperationException不支持操作异常
62 System.out.println(list);
63 }
64
65 public static boolean myContains(String[] arr,String key) {
66 for (int i = 0; i < arr.length; i++) {
67 if (arr[i].equals(key)) {
68 return true;
69 }
70
71 }
72 return false;
73 }
74
75 //toString的经典实现。Arrays.toString源码
76 public static String myToString(int[] a) {
77 int iMax = a.length - 1;
78 if (iMax == -1)
79 return "[]";
80
81 StringBuilder b = new StringBuilder();
82 b.append('[');
83 for (int i = 0; ; i++) {//中间省略条件判断,提高效率 默认为true
84 b.append(a[i]);
85 if (i == iMax)//只在结尾调用一次
86 return b.append(']').toString();
87 b.append(", ");
88 }
89 }
90
91 }

ArraysDemo

集合框架-工具类-Arrays-asList方法的更多相关文章

  1. 工具类Arrays.asList()方法把数组转换成集合

    工具类Arrays.asList()方法把数组转换成集合 不能使用其修改集合相关的方法,它的add/remove/clear方法会抛出UnsupportedOperationException() 问 ...

  2. 集合框架-工具类-Arrays方法介绍

    1 package cn.itcast.p3.toolclass.arrays.demo; 2 3 import java.util.Arrays; 4 5 public class ArraysDe ...

  3. 集合框架-工具类-Collections-其他方法将非同步集合转成同步集合的方法

    集合框架TXT  Collections-其他方法将非同步集合转成同步集合的方法

  4. Java基础知识强化之集合框架笔记33:Arrays工具类中asList()方法的使用

    1. Arrays工具类中asList()方法的使用 public static <T> List<T> asList(T... a): 把数组转成集合 注意事项: 虽然可以把 ...

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

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

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

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

  7. Java基础---泛型、集合框架工具类:collections和Arrays

    第一讲     泛型(Generic) 一.概述 1.JDK1.5版本以后出现的新特性.用于解决安全问题,是一个类型安全机制. 2.JDK1.5的集合类希望在定义集合时,明确表明你要向集合中装入那种类 ...

  8. Java 集合框架工具类

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

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

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

  10. Java8集合框架——集合工具类Arrays内部方法浅析

    java.util.Arrays 备注:本文只对 Java8 中的 java.util.Arrays 中提供的基本功能进行大致介绍,并没有对其具体的实现原理进行深入的探讨和分析.详情可自己深入观摩源码 ...

随机推荐

  1. 【LeetCode】953. Verifying an Alien Dictionary 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 日期 题目地址:https://leetcode.c ...

  2. 【LeetCode】211. Add and Search Word - Data structure design 添加与搜索单词 - 数据结构设计

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 公众号:负雪明烛 本文关键词:Leetcode, 力扣,211,搜索单词,前缀树,字典树 ...

  3. Parenthesis

      G - Parenthesis Time Limit:5000MS     Memory Limit:131072KB     64bit IO Format:%lld & %llu De ...

  4. 1087 - Diablo

      1087 - Diablo    PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 64 MB All of ...

  5. 分析一个简单的goroutine资源池

    分析一个简单的goroutine资源池 tunny. 从资源池中获取goroutine并进行处理的逻辑如下: tunny将goroutine处理单元封装为workWrapper,由此可以对gorout ...

  6. Codeforces 777C:Alyona and Spreadsheet(预处理)

    During the lesson small girl Alyona works with one famous spreadsheet computer program and learns ho ...

  7. [决策树]西瓜数据graphviz可视化实现

    [决策树]西瓜数据graphviz可视化实现 一.问题描述: 使用西瓜数据集构建决策树,并将构建的决策树进行可视化操作. 二.问题简析: 首先我们简单的介绍一下什么是决策树.决策树是广泛用于分类和回归 ...

  8. [opencv]求像素范围中最大值与最小值

    double minv = 0.0, maxv = 0.0; double* minp = &minv; double* maxp = &maxv; minMaxIdx(channel ...

  9. <学习opencv>绘画和注释

    /*=========================================================================*/ // 绘画 和 注释 /*========= ...

  10. http协议的状态码400,401,403,404,500,502,503,301,302等常见网页错误代码

    1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态码. 100(继续) 请求者应当继续提出请求.服务器返回此代码表示已收到请求的第一部分,正在等待其余部分. 101(切换协议) 请求者已要求 ...