JDK源码阅读-------自学笔记(六)(java.util.Arrays用法和描述浅析)
工具类的使用
- 要多使用这个类,同时,很多算法包含其中,常见操作排序、查找、填充、打印等.
1、打印数组 ------Arrays.toString()
1 // 整型初始化
2 int[] integerInitialization = {1, 2, 3, 4, 5, 6, 7, 8, 9};
3
4 // 打印数组
5 System.out.println("输出数组:" + Arrays.toString(integerInitialization));
2、排序(从小到大) -------Arrays.sort()
1 // 整型初始化
2 int[] integerInitialization = {100, 2, 30, 24, 35, 6, 57, 18, 9};
3
4 // 排序
5 Arrays.sort(integerInitialization);
6
7 // 从小到大数组
8 System.out.println("输出数组:" + Arrays.toString(integerInitialization));
3、填充 -----------Arrays.fill()
1 // 整型初始化
2 int[] integerInitialization = {101, 2, 30, 24, 35, 6, 57, 18, 9};
3
4 // 将3-6位置的元素替换为100
5 Arrays.fill(integerInitialization, 3, 6, 100);
6
7 // 打印数组
8 System.out.println("输出数组:" + Arrays.toString(integerInitialization));
4、查找(二分查找法) ---------Arrays.binarySearch()
1 // 整型初始化
2 int[] integerInitialization = {101, 2, 30, 24, 35, 6, 57, 18, 9};
3
4 // 排序
5 Arrays.sort(integerInitialization);
6
7 // 排序后数组
8 System.out.println(Arrays.toString(integerInitialization));
9
10 // 二分查找,关键字30
11 int binarySearchResult = Arrays.binarySearch(integerInitialization, 30);
12
13 // 打印数组
14 System.out.println("返回排序后的索引值数组:" + binarySearchResult);
注意
- 此处的Arrays.toString()方法是Arrays类的静态方法,不是前面讲的Object的toString()方法.
- 数据元素引用类型的排序,需要实现Comparable接口
JDK源码阅读-------自学笔记(六)(java.util.Arrays用法和描述浅析)的更多相关文章
- JDK源码阅读-------自学笔记(一)(java.lang.Object重写toString源码)
一.前景提要 Object类中定义有public String toString()方法,其返回值是 String 类型. 二.默认返回组成 类名+@+16进制的hashcode,当使用打印方法打印的 ...
- JDK源码阅读-------自学笔记(二十五)(java.util.Vector 自定义讲解)
Vector 向量 Vector简述 1).Vector底层是用数组实现的List 2).虽然线程安全,但是效率低,所以并不是安全就是好的 3).底层大量方法添加synchronized同步标记,sy ...
- JDK源码阅读-------自学笔记(五)(浅析数组)
一.数组基础 1.定义和特点 数组也可以看做是对象,数组变量属于引用类型,数组中每个元素相当于该队形的成员变量,数组对象存储在堆中. 2.初始化数组 常用类初始化 // 整型初始化 int[] int ...
- JDK源码阅读-------自学笔记(二十四)(java.util.LinkedList 再探 自定义讲解)
一.实现get方法 1.一般思维实现思路 1).将对象的值放入一个中间变量中. 2).遍历索引值,将中间量的下一个元素赋值给中间量. 3).返回中间量中的元素值. 4).示意图 get(2),传入角标 ...
- 《java.util.concurrent 包源码阅读》02 关于java.util.concurrent.atomic包
Aomic数据类型有四种类型:AomicBoolean, AomicInteger, AomicLong, 和AomicReferrence(针对Object的)以及它们的数组类型, 还有一个特殊的A ...
- JDK源码阅读-DirectByteBuffer
本文转载自JDK源码阅读-DirectByteBuffer 导语 在文章JDK源码阅读-ByteBuffer中,我们学习了ByteBuffer的设计.但是他是一个抽象类,真正的实现分为两类:HeapB ...
- JDK源码阅读(三):ArraryList源码解析
今天来看一下ArrayList的源码 目录 介绍 继承结构 属性 构造方法 add方法 remove方法 修改方法 获取元素 size()方法 isEmpty方法 clear方法 循环数组 1.介绍 ...
- JDK源码阅读(一):Object源码分析
最近经过某大佬的建议准备阅读一下JDK的源码来提升一下自己 所以开始写JDK源码分析的文章 阅读JDK版本为1.8 目录 Object结构图 构造器 equals 方法 getClass 方法 has ...
- 利用IDEA搭建JDK源码阅读环境
利用IDEA搭建JDK源码阅读环境 首先新建一个java基础项目 基础目录 source 源码 test 测试源码和入口 准备JDK源码 下图框起来的路径就是jdk的储存位置 打开jdk目录,找到sr ...
- JDK源码阅读-FileOutputStream
本文转载自JDK源码阅读-FileOutputStream 导语 FileOutputStream用户打开文件并获取输出流. 打开文件 public FileOutputStream(File fil ...
随机推荐
- #交互,分类讨论#CF1292E Rin and The Unknown Flower
题目传送门 分析 先尝试锁定一个字母,显然询问 \(CH,CO,CC\) 会比直接询问 \(C\) 更优,虽然牺牲了最后一个位置是否为 \(C\) 的查询. 同理,询问 \(HH,OH,CH\) 会比 ...
- Socket.D v2.4.9 发布
Socket.D 是什么东东? 是基于"事件"和"语义消息""流"的网络应用协议.在微服务.移动应用.物联网等场景,可替代 http.web ...
- 【直播回顾】战码先锋第五期:深入理解OpenHarmony系统启动,轻松踏上设备软件开发之旅
6月14日晚上19点,战"码"先锋第五期直播 <深入理解OpenHarmony系统启动,轻松踏上设备软件开发之旅> ,在OpenHarmony社群内成功举行. 本期 ...
- .NET Emit 入门教程:第六部分:IL 指令:6:详解 ILGenerator 指令方法:方法调用指令
前言: 经过前面几篇的学习,我们了解到指令的大概分类,如: 参数加载指令,该加载指令以 Ld 开头,将参数加载到栈中,以便于后续执行操作命令. 参数存储指令,其指令以 St 开头,将栈中的数据,存储到 ...
- openGauss中的sequence跟Oracle的sequence有什么区别?
openGauss 中的 sequence 跟 Oracle 的 sequence 有什么区别? openGauss 中也提供了 sequence 序列功能,使用 Oracle 的用户应该都非常喜欢使 ...
- 脑洞golang embed 的使用场景
golang 的 embed 的功能真是一个很神奇的功能,它能把静态资源,直接在编译的时候,打包到最终的二进制程序中. 为什么会设计这么一个功能呢?我想和 golang 的崇尚简单的原则有关系吧.它希 ...
- Linux0.12内核源码解读(2)-Bootsect.S
大家好,我是呼噜噜,在上一篇文章聊聊x86计算机启动发生的事?我们了解了x86计算机启动过程,MBR.0x7c00是什么?其中当bios引导结束后,操作系统接过计算机的控制权后,发生了哪些事?本文将揭 ...
- CDH5.15.1集群安装部署
CDH集群安装部署 大数据平台软件清单 本文部署的大数据基础平台为CDH,操作系统的版本为CentOS6.8,JDK的版本为1.8,Cloudera Manager与CDH的版本为5.15.1,数据库 ...
- Python 潮流周刊第 46 期(摘要)+ 赠书 7 本
本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章.教程.开源项目.软件工具.播客和视频.热门话题等内容.愿景:帮助所有读者精进 Python 技术,并增长职 ...
- iOS系统崩溃的捕获
iOS系统崩溃的捕获 相信大家在开发iOS程序的时候肯定写过各种Bug,而其中最为严重的Bug就是会导致崩溃的Bug(一般来说妥妥的P1级).在应用软件大大小小的各种异常中,崩溃确实是最让人难以接受的 ...