当前位置: 首页 > news >正文

Java—Arrays api

public static String toString(数组)                         //把数组拼接成一个字符串
public static int binarySearch(数组,查找的元素)            //二分查找法查找元素
public static int[] copyOf(原数组,新数组长度)               //拷贝数组
public static int[] copyOfRange(原数组,起始索引,结束索引)   //拷贝数组(指定范围)
public static void fill(数组,需要填充的元素)                //填充数组
public static void sort(数组)                               //按照默认方式进行数组排序
public static void sort(数组,排序规则)                     //按照指定的规则排序

目录

binarySearch

copyOf

copyOfRange

sort


binarySearch

1. 二分查找的前提:数组中的元素必须是升序的;
2. 如果要查找的元素存在,则返回查找到的元素的索引;如果要查找的元素不存在,则返回 (-插入点)-1。

代码示例

int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
System.out.println(Arrays.binarySearch(arr, 6)); //5
System.out.println(Arrays.binarySearch(arr, 10));//9
System.out.println(Arrays.binarySearch(arr, 20));//-11

copyOf

参数一:旧数组
参数二:新数组的长度
方法的底层会根据第二个参数来创建新的数组,
如果新数组的长度 < 旧数组的长度,会部分拷贝;
如果新数组的长度 = 旧数组的长度,会完全拷贝;
如果新数组的长度 > 旧数组的长度,会补上默认初始值。

代码示例

public static void main(String[] args) throws ParseException {int[] arr = {1, 2, 3, 4, 5};int[] newArr1 = Arrays.copyOf(arr, 3);System.out.println(Arrays.toString(newArr1));// [1, 2, 3]int[] newArr2 = Arrays.copyOf(arr, 5);System.out.println(Arrays.toString(newArr2));// [1, 2, 3, 4, 5]int[] newArr3 = Arrays.copyOf(arr, 8);System.out.println(Arrays.toString(newArr3));// [1, 2, 3, 4, 5, 0, 0, 0]}

copyOfRange

注意:对于数据拷贝的范围包头不包围,包左不包右

代码示例

public static void main(String[] args) throws ParseException {int[] arr = {1, 2, 3, 4, 5};int[] newArr1 = Arrays.copyOfRange(arr, 0, 4);System.out.println(Arrays.toString(newArr1));// [1, 2, 3, 4]}

sort

public static void main(String[] args) throws ParseException {Integer[] arr = {5, 3, 4, 2, 1};Arrays.sort(arr);System.out.println(Arrays.toString(arr));// [1, 2, 3, 4, 5]Arrays.sort(arr,new Comparator<Integer>(){@Overridepublic int compare(Integer o1, Integer o2) {return o2-o1; //倒序排序//return o1-o2 正序排序(默认)}});System.out.println(Arrays.toString(arr));// [5, 4, 3, 2, 1]}


http://www.mrgr.cn/news/8262.html

相关文章:

  • iZotope Ozone 11 Advanced:专业音频制作与母带处理的巅峰之作
  • httpClient与openfeign
  • 联网可视化:引领智能出行新时代
  • day34(8/22)——Docker
  • 硬件寄存器的简单理解
  • harmony next 服务卡片实时刷新
  • docker镜像,ip,端口映射,持久化
  • 【MySQL数据库管理问答题】第2章 安装和升级MySQL
  • C++进阶 | [5] 哈希
  • 2024华为数通HCIP-datacom最新题库(H12-831变题更新⑩)
  • 自动续期 双token流程
  • 大数据-99 Spark 集群 Spark Streaming DStream 文件数据流、Socket、RDD队列流
  • 基于php网上差旅费报销系统设计与实现
  • OSPF路由原理详解与关键点
  • spring揭秘09-aop02-aop基本要素抽象与通知及切面织入
  • RCE - - 无字母数字远程命令执行
  • 【机器学习】3. 欧式距离,曼哈顿距离,Minkowski距离,加权欧式距离
  • Spring声明式事务
  • Json-TypeFactory和TypeReference和JavaType
  • Mac apache 配置