Java 数组常用操作一(排序、元素位置查找、添加元素、获取长度、数组反向、最大值最小值、合并、范围填充)
数组排序及元素位置查找
import java.util.Arrays;public class MainClass {public static void main(String args[]) throws Exception {int array[] = { 2, 5, -2, 6, -3, 8, 0, -7, -9, 4 };Arrays.sort(array);printArray("数组排序结果为", array);int index = Arrays.binarySearch(array, 2);System.out.println("元素 2 在第 " + index + " 个位置");}private static void printArray(String message, int array[]) {System.out.println(message+ ": [length: " + array.length + "]");for (int i = 0; i < array.length; i++) {if(i != 0){System.out.print(", ");}System.out.print(array[i]);}System.out.println();}
}
以上代码运行输出结果为:
数组排序结果为: [length: 10] -9, -7, -3, -2, 0, 2, 4, 5, 6, 8
元素 2 在第 5 个位置
数组添加元素
import java.util.Arrays;public class MainClass {public static void main(String args[]) throws Exception {int array[] = { 2, 5, -2, 6, -3, 8, 0, -7, -9, 4 };Arrays.sort(array);printArray("数组排序", array);int index = Arrays.binarySearch(array, 1);System.out.println("元素 1 所在位置(负数为不存在):"+ index); int newIndex = -index - 1;array = insertElement(array, 1, newIndex);printArray("数组添加元素 1", array);}private static void printArray(String message, int array[]) {System.out.println(message+ ": [length: " + array.length + "]");for (int i = 0; i < array.length; i++) {if (i != 0){System.out.print(", ");}System.out.print(array[i]); }System.out.println();}private static int[] insertElement(int original[],int element, int index) {int length = original.length;int destination[] = new int[length + 1];System.arraycopy(original, 0, destination, 0, index);destination[index] = element;System.arraycopy(original, index, destination, index+ 1, length - index);return destination;}
}
以上代码运行输出结果为:
数组排序: [length: 10] -9, -7, -3, -2, 0, 2, 4, 5, 6, 8
元素 1 所在位置(负数为不存在):-6
数组添加元素 1: [length: 11] -9, -7, -3, -2, 0, 1, 2, 4, 5, 6, 8
获取数组长度
public class Main {public static void main(String args[]) {String[][] data = new String[2][5];System.out.println("第一维数组长度: " + data.length);System.out.println("第二维数组长度: " + data[0].length);}
}
以上代码运行输出结果为:
第一维数组长度: 2
第二维数组长度: 5
数组反转(数组反向)
import java.util.ArrayList;
import java.util.Collections;public class Main {public static void main(String[] args) {ArrayList<String> arrayList = new ArrayList<String>();arrayList.add("A");arrayList.add("B");arrayList.add("C");arrayList.add("D");arrayList.add("E");System.out.println("反转前排序: " + arrayList);Collections.reverse(arrayList);System.out.println("反转后排序: " + arrayList);}
}
以上代码运行输出结果为:
反转前排序: [A, B, C, D, E]
反转后排序: [E, D, C, B, A]
数组获取最大和最小值
import java.util.Arrays;
import java.util.Collections;public class Main {public static void main(String[] args) {Integer[] numbers = {8, 2, 7, 1, 4, 9, 5};int min = (int) Collections.min(Arrays.asList(numbers));int max = (int) Collections.max(Arrays.asList(numbers));System.out.println("最小值: " + min);System.out.println("最大值: " + max);}
}
以上代码运行输出结果为:
最小值: 1
最大值: 9
数组合并
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;public class Main {public static void main(String args[]) {String a[] = { "A", "E", "I" };String b[] = { "O", "U" };List list = new ArrayList(Arrays.asList(a));list.addAll(Arrays.asList(b));Object[] c = list.toArray();System.out.println(Arrays.toString(c));}
}
以上代码运行输出结果为:
[A, E, I, O, U]
数组填充(批量改数,范围填充)
import java.util.*;public class FillTest {public static void main(String args[]) {int array[] = new int[6];Arrays.fill(array, 100);for (int i=0, n=array.length; i < n; i++) {System.out.println(array[i]);}System.out.println();Arrays.fill(array, 3, 6, 50);for (int i=0, n=array.length; i< n; i++) {System.out.println(array[i]);}}
}
以上代码运行输出结果为:
100
100
100
100
100
100100
100
100
50
50
50
Java 数组常用操作一(排序、元素位置查找、添加元素、获取长度、数组反向、最大值最小值、合并、范围填充)相关推荐
- java web定义数组_Java基础之数组--数组常用操作
3.2一维数组 3.2.1声明数组 数组类型[] 数组名称:int[] username; 或者 数组类型 数组名称[];int username[]; 3.2.2初始化一维数组 一维数组初始化有两种 ...
- (07)System Verilog 数组常用操作
(07)System Verilog 数组常用操作 1.1 目录 1)目录 2)FPGA简介 3)System Verilog简介 4)System Verilog 数组常用操作 5)结语 1.2 F ...
- c语言数组长度可以在键盘上输入吗,C语言编程(用指针) 定义一个数组长度为10,从键盘输入数组,将每一个元素除以2后,输出数组...
#includeint main(){int a[10]={},i,sum=0;printf("请输入10个整数:\n");for(i=0;i<10;i++){scanf(& ...
- Java数组常用操作,创建,比较,排序,检索,打印数组;copyOf,equals,sort,toString
创建数组 copyOf 复制指定的数组,截取或用 null 填充 copyOfRange 复制指定范围内的数组到一个新的数组 fill 对数组进行填充 package com.study.array; ...
- Java 数组常用操作二(扩充、扩容、重复数据、动态数组、数组差集、数组交集、查找指定元素、判断是否相同、数组合并)
数组扩容(扩充) public class Main {public static void main(String[] args) {String[] names = new String[] { ...
- Java数组常用操作
目录 1.数组长度 2.数组填充 3.数组复制 4.数组比较 5.数组排序 6.在数组中搜索指定元素 7.把数组转换成字符串 数组的常用操作包括数组的充.复制.比较.排序等.Java提供 ...
- java 数组操作_9个java数组常用操作实例
数组的特点: 数组是一种最简单的复合数据类型,它是有序数据的集合,数组中的每个元素具有相同的数据类型,可以用一个统一的数组名和不同的下标来唯一确定数组中的元素.根据数组的维度,可以将其分为一维数组.二 ...
- Java必备常用操作API
String类 1. 字符串比较规则 equals对比的是值和长度 ==对比地址 就当等号不存在,无脑使用equals. System.out.println("a" == &qu ...
- JAVA笔记-常用操作
一.使用String.format()格式化字符串 1:介绍 String类的format()方法用来创建格式化的字符串或者连接多个字符串对象 2:使用 Str ...
最新文章
- java 数组的动态初始化和静态初始化
- linux线程超过1024报错,Linux定位c++程序运行异常的经历《实操》
- 网络营销外包新策略——B站坚信求新求变才能得以“青春永驻”!
- 解析rtcm32报文工具_RTCM32编解码中的一些概念及相关文献阅读
- python 图标字体_Icon-font图标字体的四类制作方法
- 流行的开源数据挖掘tool
- ajax查询功能查询源码,ajax实现分页查询功能
- C#属性(Attribute)用法实例解析
- Java中关于HashMap的使用和遍历
- matlab只加盐噪声,我用matlab中的imnoise函数给图像加椒盐噪声为什么产生的噪声不是黑白的?...
- wav音频文件格式解析【个人笔记】(自用)
- 基于51单片机的避障小车
- 我的电脑(ACER 4750G)升级
- 2021中青杯数学建模A题 (论文+代码) 超详细
- 台式计算机怎么连手机热点,台式电脑怎么连接手机热点进行上网
- android 自定义接口,Android中定义接口的用法
- UnrealEngine蓝图进阶学习笔记(六):按波次生成敌人
- 发国际快递美国专线需要注意什么事项
- android面试题库,Android面试试题及答案
- NYOJ 首字母变大写
热门文章
- Hepatology | 朱黎琴/于吉洋团队合作揭示新生儿肝脏发育中肝母细胞瘤转移的新机制...
- 推荐一个神器 - 把你的照片随心所欲的摆成各种形状
- P1307 [NOIP2011 普及组] 数字反转(python3实现)
- Python | threading01 - 创建两个同时运行的子线程
- 基于matlab数字识别算法系统设计与实现(含源文件)
- php前缀路由器的,php – 使用前缀和Zend_Controller_Router_Route
- git 获取最新代码_程序员必知:这是一份全面 amp; 详细的 Git与Github 介绍指南
- PHP笔记-用户登录例子
- Python笔记-U2控件操作和操作超时
- 前端工作笔记-element ui弹窗嵌套并获取输入