学习笔记,仅供参考


文章目录

  • Arrays类
    • Arrays类概述
    • 成员方法
      • toString方法
      • sort方法
      • binarySearch
    • 举个例子

Arrays类

Arrays类概述

  • 此类包含用来操作数组(比如排序和搜索)的各种方法。
  • 在java.util包下,使用Arrays类时,我们需要导包。

成员方法

//数组转字符串
public static String toString(int[] a)
//排序
public static void sort(int[] a)
//查找元素位置
public static int binarySearch(int[] a,int key)

toString方法

public static String toString(int[] a)

返回指定数组内容的字符串表示形式。字符串表示形式由数组的元素列表组成,括在方括号("[]")中。相邻元素用字符 “,”(逗号加空格)分隔。

  • 参数

    • a - 返回其字符串表示形式的数组
  • 返回

    • a 的字符串表示形式

sort方法

public static void sort(int[] a)

对指定的 int 型数组按数字升序进行排序。该排序算法是一个经过调优的快速排序法

  • 参数

    • a - 要排序的数组

binarySearch

public static int binarySearch(int[] a,int key)

使用二分搜索法来搜索指定的 int 型数组,以获得指定的值。必须在进行此调用之前对数组进行排序(通过 sort(int[]) 方法)。如果没有对数组进行排序,则结果是不确定的。

如果数组包含多个带有指定值的元素,则无法保证找到的是哪一个。

  • 参数

    • a - 要搜索的数组
    • key - 要搜索的值
  • 返回

    • 如果它包含在数组中,则返回搜索键的索引,否则返回 (- (插入点) - 1)。插入点 被定义为将键插入数组的那一点:即第一个大于此键的元素索引,如果数组中的所有元素都小于指定的键,则为 a.length。注意,这保证了当且仅当此键被找到时,返回的值将 >= 0。

举个例子

package com.guiyang.restudy3;import java.util.Arrays;public class D4Arrays {public static void main(String[] args) {int[] arr = {33,22,11,44,66,55};System.out.println(Arrays.toString(arr));           //数组转字符串Arrays.sort(arr);                                   //排序System.out.println(Arrays.toString(arr));int[] arr2 = {11,22,33,44,55,66};System.out.println(Arrays.binarySearch(arr2, 22));System.out.println(Arrays.binarySearch(arr2, 66));System.out.println(Arrays.binarySearch(arr2, 20));   //-插入点-1}}

输出:

[33, 22, 11, 44, 66, 55]
[11, 22, 33, 44, 55, 66]
1
5
-2

第三次学JAVA再学不好就吃翔(part60)--Arrays类相关推荐

  1. 第三次学JAVA再学不好就吃翔(part107)--字符流的拷贝

    学习笔记,仅供参考,有错必纠 文章目录 IO流 字符流的拷贝 拷贝纯文本文件 注意事项 自定义字符数组的拷贝 IO流 字符流的拷贝 拷贝纯文本文件 zzz.txt: 安徽财经大学 JAVA代码: pa ...

  2. 第三次学JAVA再学不好就吃翔(part106)--字符流

    学习笔记,仅供参考,有错必纠 文章目录 IO流 字符流输入流FileReader 字符流是什么 FileReader类构造方法 举个例子 字符流输出流FileWriter FileWriter构造方法 ...

  3. 第三次学JAVA再学不好就吃翔(part46)--Scanner类

    学习笔记,仅供参考 文章目录 Scanner类 Scanner获取数据出现的问题 Scanner类 概述 Scanner是在java.util包下的一个类,使用该类时我们需要导包.这个类被final修 ...

  4. 第三次学JAVA再学不好就吃翔(part117)--单例设计模式

    学习笔记,仅供参考,有错必纠 文章目录 多线程 单例设计模式 饿汉式 懒汉式 第三种格式 Timer类 线程的五种状态 多线程 单例设计模式 单例设计模式,即保证类在内存中只有一个对象,如何保证类在内 ...

  5. 第三次学JAVA再学不好就吃翔(part109)--LineNumberReader类

    学习笔记,仅供参考,有错必纠 IO流 LineNumberReader类 该类继承自java.io.BufferedReader,该类可以跟踪行号的缓冲字符输入流.此类定义了方法 setLineNum ...

  6. 第三次学JAVA再学不好就吃翔(part108)--带缓冲的字符流

    学习笔记,仅供参考,有错必纠 文章目录 IO流 带缓冲的字符流 BufferedReader和BufferedWriter readLine和newLine方法 IO流 带缓冲的字符流 Buffere ...

  7. 第三次学JAVA再学不好就吃翔(part7)--基础语法之运算符

    学习笔记,仅供参考 文章目录 JAVA基础语法 运算符 算数运算符 算术运算符 ++和-- 赋值运算符 关系运算符 JAVA基础语法 运算符 什么是运算符 就是对常量和变量进行操作的符号. 运算符的分 ...

  8. 第三次学JAVA再学不好就吃翔(part115)--多线程

    学习笔记,仅供参考,有错必纠 文章目录 多线程 多线程引入 什么是线程 多线程并行和并发的区别 Java程序运行原理 多线程的实现方式 多线程实现的方式1 多线程程序实现的方式2 以上两种实现方式的区 ...

  9. 第三次学JAVA再学不好就吃翔(part113)--对象操作流

    学习笔记,仅供参考,有错必纠 对象操作流 对象操作流可以将一个对象写出, 或者读取一个对象到程序中,也就是执行了序列化和反序列化的操作. 举个例子 先构造一个Role类: package com.gu ...

最新文章

  1. PaSS:用于 PacBio 测序的测序模拟器
  2. Struts文件上传包含修改文件上传参数,多文件上传
  3. AbstractFactoryPattern(23种设计模式之一)
  4. BUUCTF-- Linux Labs 1---SSH远程登陆
  5. gopacket 在 windows 上面遇到的问题
  6. mysql订单详情的设计_订单功能模块设计与实现
  7. mysql中视图和表的区别及联系_MySQL中Update、select联用操作单表、多表,及视图与临时表的区别...
  8. 安大计算机学院院长汤进,淮北师范大学
  9. shell command 输入时的快捷键
  10. Coprime Sequence
  11. 多媒体分析与理解_多媒体在课堂教学中应用的研究研究报告(二)
  12. Android——从HellowWorld开始
  13. python:读取mat文件
  14. 微信公众号如何运营和管理?
  15. 液晶电视的驱动板与逻辑板维修
  16. 【文学与历史】浅谈戏说华夏历史
  17. 【编程之外】当遮羞布被掀开,当人们开始接受一切
  18. org.apache.http.ConnectionClosedException: Premature end of Content-Length delimited message body
  19. 简单工厂方法模式(Simple Factory Methord)
  20. 腾讯邮箱比阿里邮箱好,腾讯邮箱还是阿里邮箱?

热门文章

  1. django Exception Value:no such table: cmdb_XXX
  2. ANSYS提取刚度矩阵
  3. leetcode刷题集:栈与队列
  4. 大杂烩, 硬盘安装Linux
  5. 资深专家深度剖析Kubernetes API Server第2章(共3章)
  6. 基于小程序的Token身份权限体系
  7. 计算机的组成和Linux的发行版本介绍
  8. hadoop中map的个数
  9. 酷友观点/经验:支付接口返回数据接收地址,session数据丢失(或者说失效)的问题浅析(原创文章)...
  10. Apache 安装的2种方法