集合框架-工具类-Arrays-asList方法

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方法的更多相关文章
- 工具类Arrays.asList()方法把数组转换成集合
工具类Arrays.asList()方法把数组转换成集合 不能使用其修改集合相关的方法,它的add/remove/clear方法会抛出UnsupportedOperationException() 问 ...
- 集合框架-工具类-Arrays方法介绍
1 package cn.itcast.p3.toolclass.arrays.demo; 2 3 import java.util.Arrays; 4 5 public class ArraysDe ...
- 集合框架-工具类-Collections-其他方法将非同步集合转成同步集合的方法
集合框架TXT Collections-其他方法将非同步集合转成同步集合的方法
- Java基础知识强化之集合框架笔记33:Arrays工具类中asList()方法的使用
1. Arrays工具类中asList()方法的使用 public static <T> List<T> asList(T... a): 把数组转成集合 注意事项: 虽然可以把 ...
- java基础37 集合框架工具类Collections和数组操作工具类Arrays
一.集合框架工具类:Collections 1.1.Collections类的特点 该工具类中所有的方法都是静态的 1.2.Collections类的常用方法 binarySearch(List< ...
- JAVA基础学习之 Map集合、集合框架工具类Collections,Arrays、可变参数、List和Set集合框架什么时候使用等(4)
package com.itcast.test20140113; import java.util.ArrayList; import java.util.Arrays; import java.ut ...
- Java基础---泛型、集合框架工具类:collections和Arrays
第一讲 泛型(Generic) 一.概述 1.JDK1.5版本以后出现的新特性.用于解决安全问题,是一个类型安全机制. 2.JDK1.5的集合类希望在定义集合时,明确表明你要向集合中装入那种类 ...
- Java 集合框架工具类
Collections Arrays Collections 集合框架的工具类, 里面的方法都是静态的, 可以直接使用类名调用 常用方法 1. sort(List<T> list); // ...
- java集合框架——工具类
一.概述 JAVA集合框架中有两个很重要的工具类,一个是Collections,另一个是Arrays.分别封装了对集合的操作方法和对数组的操作方法,这些操作方法使得程序员的开发更加高效. public ...
- Java8集合框架——集合工具类Arrays内部方法浅析
java.util.Arrays 备注:本文只对 Java8 中的 java.util.Arrays 中提供的基本功能进行大致介绍,并没有对其具体的实现原理进行深入的探讨和分析.详情可自己深入观摩源码 ...
随机推荐
- 【九度OJ】题目1191:矩阵最大值 解题报告
[九度OJ]题目1191:矩阵最大值 解题报告 标签(空格分隔): 九度OJ http://ac.jobdu.com/problem.php?pid=1191 题目描述: 编写一个程序输入一个mXn的 ...
- 第四个知识点 P类复杂问题
第四个知识点 P类复杂问题 原文地址:http://bristolcrypto.blogspot.com/2014/10/52-things-number-4-complexity-class-p.h ...
- ADVERSARIAL EXAMPLES IN THE PHYSICAL WORLD
目录 概 主要内容 least likely class adv. 实验1 l.l.c. adv.的效用 实验二 Alexey Kurakin, Ian J. Goodfellow, Samy Ben ...
- Proximal Algorithms 1 介绍
目录 定义 解释 图形解释 梯度解释 一个简单的例子 Proximal Algorithms 定义 令\(f: \mathrm{R}^n \rightarrow \mathrm{R} \cup \{+ ...
- 完全替代RTD2166方案设计|CS5202直接替代RTD2166|DP转VGA 方案
CS5202可以直接PIN TO PIN替代RTD2166 整体方案设计只需改动一个电阻和一个电容,在性能和参数设定方面与RTD2166可以达成一致,且成本比RTD2166要低,性价比更高.CS520 ...
- 使用PyTorch构建神经网络模型进行手写识别
使用PyTorch构建神经网络模型进行手写识别 PyTorch是一种基于Torch库的开源机器学习库,应用于计算机视觉和自然语言处理等应用,本章内容将从安装以及通过Torch构建基础的神经网络,计算梯 ...
- 美和易思 · 「云农职互联网技术学院」HTML+CSS 做西普尼金表官网
假期作业,好久没碰了,代码写得很烂......写博客纯属记录! 源代码下载地址:https://download.csdn.net/download/weixin_44893902/12805555 ...
- 三角网格上的寻路算法Part.2—A*算法
背景 继上一篇三角网格Dijkstra寻路算法之后,本篇将继续介绍一种更加智能,更具效率的寻路算法-A*算法,本文将首先介绍该算法的思想原理,再通过对比来说明二者之间的相同与不同之处,然后采用类似Di ...
- Git_使用SSH密钥操作远端仓库
git支持多种传输协议,ssh协议是其中一种. 初次使用git的用户要使用ssh协议大概需要三个步骤: 生成密钥 设置远程仓库(本文以github为例)上的公钥 把git的 remote url 修改 ...
- python call函数
call()函数本质上是将一个类的实例转换成一个函数,例如下列示例: class Sample: def __init__(self, x, y): self.x = x self.y = y def ...