package day04.d1.shuzu;

import java.util.Arrays;

/**
* Arrays 工具类
* @author Administrator
*
*/
public class Arrays__________Demo {

public static void main(String[] args) {
/**
* 1、Arrays.binarySearch
*/
int[] arr={30,2,5,3,7,1,6,4,12,56,45,33};
Arrays.sort(arr);
System.out.println(Arrays.toString(arr));
int index=Arrays.binarySearch(arr,7);
System.out.println(index);

/**
* 2、Arrays.copyOf
*/
int[] copyArr;
copyArr=Arrays.copyOf(arr, 5);//arr 被拷贝的数组 5 复制前五个元素
System.out.println("copyArr: "+Arrays.toString(copyArr));
System.out.println(copyArr.length);

int[] copyArr2;
copyArr2=Arrays.copyOfRange(arr, 2, 5);//包含数组下标为2的元素,不包含数组下标为5的元素
System.out.println(Arrays.toString(copyArr2));

/**
* 3、Arrays.fill
*/
int[] fillArr=new int[5];
Arrays.fill(fillArr, 5); //填充元素
System.out.println(Arrays.toString(fillArr));

/*
* hashcode是怎么进行计算的
*
*if (a == null)
return 0;

int result = 1;
for (int element : a)
result = 31 * result + element;
*
*/
/**
* 4、Arrays.hashCode
*/
int hc=Arrays.hashCode(arr);
System.out.println("hashCode "+hc);

// int[] brr=null;
// System.out.println(brr.hashCode()); // 0

int[] brr1={1};
int res=brr1.hashCode();
System.out.println("brr1 "+res); // 32

int result = 1;
for (int element : brr1)
result = 31 * result + element;

System.out.println("brr1-------"+result);
System.out.println("----------------------------");

int[] brr2={1,1};
System.out.println("brr2 "+brr1.hashCode()); // 31*32+1=993

System.out.println("计算是有问题,");
System.out.println("****************************************************************");

/**
* 5、Arrays.sort
*/

Arrays.sort(arr);
System.out.println("Arrays.sort(arr) "+arr);

/**
* 6、Arrays.toString
*/
String str=Arrays.toString(arr);
System.out.println("Arrays.toString(arr) "+str);

}

}

java中的数组的Arrays工具类的使用的更多相关文章

  1. java 中 针对数组进行的工具类

    1.遍历数组的方法: public static void printfArray(int[] arr)  2. 获取数组中最大值: public static int getMax(int[] ar ...

  2. 二维数组及Arrays工具类

    1.二维数组 概念: 数组中的每一个元素类型都是一维数组 二维数组初始化方式: 静态初始化: 格式: 元素类型[][] 数组名 = new 元素类型[][]{{一维数组1},{一维数组2},{一维数组 ...

  3. Java程序员的日常—— Arrays工具类的使用

    这个类在日常的开发中,还是非常常用的.今天就总结一下Arrays工具类的常用方法.最常用的就是asList,sort,toStream,equals,copyOf了.另外可以深入学习下Arrays的排 ...

  4. Java中的AES加解密工具类:AESUtils

    本人手写已测试,大家可以参考使用 package com.mirana.frame.utils.encrypt; import com.mirana.frame.constants.SysConsta ...

  5. 04、数组与Arrays工具类

    目录 前言 一.一维数组 基本认识 内存空间 二.二维数组 基本认识 三.工具类Arrays 前言 去年四月份大一下半学期正式开始学习Java,一路从java基础.数据库.jdbc.javaweb.s ...

  6. Java中的4个并发工具类 CountDownLatch CyclicBarrier Semaphore Exchanger

    在 java.util.concurrent 包中提供了 4 个有用的并发工具类 CountDownLatch 允许一个或多个线程等待其他线程完成操作,课题点 Thread 类的 join() 方法 ...

  7. java中redis的分布式锁工具类

    使用方式 try { if(PublicLock.getLock(lockKey)){ //这里写代码逻辑,执行完后需要释放锁 PublicLock.freeLock(lockKey); } } ca ...

  8. java中使用反射做一个工具类,来为指定类中的成员变量进行赋值操作,使用与多个类对象的成员变量的赋值。

    //------------------------------------------------我是代码的分割线 // 首选是一个工具类,在该工具类里面,定义了一个方法,public void s ...

  9. java中常用的16个工具类

    1. org.apache.commons.io.IOUtils:处理io流的相关操作 closeQuietly ( ) toString ( ) copy ( ) toByteArray ( ) w ...

随机推荐

  1. 深圳面试一周记录——.NET(B/S)开发

    个人简单信息:2011年毕业,最高学历大专,最近一份工作在广州:有做架构设计经验,有一年的带团队(10人左右)经验:互联网和行业软件公司都待过. 为免不必要的争论,本文说地址的就不说公司行业,说公司行 ...

  2. Lazarus开发环境编译选项配置

    Lazarus的环境配置让人有点犯晕,对于刚从delphi转到lazarus上的我来说,每次新建工程都会遇到一堆Can't find unit xxxx used by xxxx的问题,问题虽然不大, ...

  3. WebForm 登陆test

    <script> window.onload = function () { document.getElementById("form1").onsubmit = f ...

  4. 关于JsonArray与JsonObject的使用

    学习地址:http://blog.csdn.net/lishuangzhe7047/article/details/28880009 关于前台向后台传递数组(里面包含json格式) [{"i ...

  5. BZOJ 4195: [Noi2015]程序自动分析 并查集 + 离散化 + 水题

    TM 读错题了...... 我还以为是要动态询问呢,结果是统一处理完了再询问...... 幼儿园题,不解释. Code: #include<bits/stdc++.h> #define m ...

  6. 13、Next Item Recommendation with Self-Attention---自注意力+CML

    一.摘要: 自注意力机制------从用户历史交互中推断出项目-项目关系.学习每个项目的相对权重[用来学习用户的暂时兴趣表示] 二. 模型: 一部分是用于建模用户短期意图的自注意力机制,一部分是建模用 ...

  7. 【剑指Offer】49、把字符串转换成整数

      题目描述:   将一个字符串转换成一个整数(实现Integer.valueOf(string)的功能,但是string不符合数字要求时返回0),要求不能使用字符串转换整数的库函数. 数值为0或者字 ...

  8. 邓_ SVN·最新使用教程总结

    SVN简介: 为什么要使用SVN? 程序员在编写程序的过程中,每个程序员都会生成很多不同的版本,这就需要程序员有效的管理代码,在需要的时候可以迅速,准确取出相应的版本. Subversion是什么? ...

  9. 0419MySQL 中 Join 的基本实现原理

    转自http://www.kuqin.com/database/20081206/29717.html 简朝阳 JOIN的用法你真的知道吗? 在 MySQL 中,只有一种 Join 算法,就是大名鼎鼎 ...

  10. C#中的stathread标签【待填的坑】

    stathread这种线程是给COM组件使用的线程,如果不适用com对象 如果com对象标记为sta的,则它就是单线程运行的 stathread 组件线程遗留的标签