Java关于数组操作函数
- 数组排序及元素查找
sort()方法对Java数组进行排序。
binarySearch() 方法来查找数组中的元素,返回该元素所在的位置。
import java.util.*;
public class test {
public static void main(String args[]){
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(int array[]){
System.out.println("数组排序结果:" + ": [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属性来获取数组的长度。
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);
}
}
- 数组反转
使用 Collections.reverse(ArrayList) 可以将数组进行反转。
//import java.util.*;
import java.util.ArrayList;
import java.util.Collections;
public class test {
public static void main(String[] args){
ArrayList arrayList = new ArrayList();
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);
}
}
- 数组获取最大值和最小值
通过 Collection 类的 Collection.max() 和 Collection.min() 方法来查找数组中的最大和最小值。
//import java.util.*;
import java.util.Arrays;
import java.util.Collections;
public class test {
public static void main(String[] args) {
Integer[] numbers = { 8, 2, 7, 1, 4, 9, 5};
int min = Collections.min(Arrays.asList(numbers));
int max = Collections.max(Arrays.asList(numbers));
System.out.println("最小值: " + min);
System.out.println("最大值: " + max);
}
}
- 数组合并
通过 List 类的 Arrays.toString () 方法和 List 类的 list.Addall(array1.asList(array2) 方法将两个数组合并为一个数组。
import java.util.Arrays;
import java.util.ArrayList;
import java.util.List;
public class test {
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));
}
}
- 数组填充
通过 Java Util 类的 Array.fill(arrayname,value) 方法和 Array.fill(arrayname ,starting index ,ending index ,value) 方法向数组中填充元素。
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
100 100
100
100
50
50
50
- 数组扩容
public class test {
public static void main(String[] args) {
String[] names = new String[] { "A", "B", "C" };
String[] extended = new String[5];
extended[3] = "D";
extended[4] = "E";
System.arraycopy(names, 0, extended, 0, names.length);
for (String str : extended){
System.out.print(str);
System.out.print(" ");
}
}
}
输出:
A B C D E
- 删除数组元素
使用ArrayList.remove()方法删除数组元素。
ArrayList.add(E)
ArrayList.add(int index, E)
对应的ArrayList.remove()也有两种。
import java.util.ArrayList;
public class test {
public static void main(String[] args) {
ArrayList objArray = new ArrayList();
objArray.clear();
objArray.add(0,"第 0 个元素");
objArray.add(1,"第 1 个元素");
objArray.add(2,"第 2 个元素");
System.out.println("数组删除元素前:"+objArray);
objArray.remove(1);
objArray.remove("第 0 个元素");
System.out.println("数组删除元素后:"+objArray);
}
}
输出:
数组删除元素前:[第 0 个元素, 第 1 个元素, 第 2 个元素]
数组删除元素后:[第 2 个元素]
- 数组差集
使用 removeAll () 方法来计算两个数组的差集。
import java.util.ArrayList;
public class test {
public static void main(String[] args) {
ArrayList objArray = new ArrayList();
ArrayList objArray2 = new ArrayList();
objArray2.add(0,"common1");
objArray2.add(1,"common2");
objArray2.add(2,"notcommon");
objArray2.add(3,"notcommon1");
objArray.add(0,"common1");
objArray.add(1,"common2");
objArray.add(2,"notcommon2");
System.out.println("array1 的元素" +objArray);
System.out.println("array2 的元素" +objArray2);
objArray.removeAll(objArray2);
System.out.println("array1 与 array2 数组差集为:"+objArray);
}
}
- 数组交集
使用 retainAll () 方法来计算两个数组的交集。
import java.util.ArrayList;
public class test {
public static void main(String[] args) {
ArrayList objArray = new ArrayList();
ArrayList objArray2 = new ArrayList();
objArray2.add(0,"common1");
objArray2.add(1,"common2");
objArray2.add(2,"notcommon");
objArray2.add(3,"notcommon1");
objArray.add(0,"common1");
objArray.add(1,"common2");
objArray.add(2,"notcommon2");
System.out.println("array1 数组元素:"+objArray);
System.out.println("array2 数组元素:"+objArray2);
objArray.retainAll(objArray2);
System.out.println("array2 & array1 数组交集为:"+objArray);
}
}
- 在数组中查找指定的元素
使用 contains () 方法来查找数组中的指定元素,返回值为 true or false。
import java.util.ArrayList;
public class test {
public static void main(String[] args) {
ArrayList objArray = new ArrayList();
ArrayList objArray2 = new ArrayList();
objArray2.add(0,"common1");
objArray2.add(1,"common2");
objArray2.add(2,"notcommon");
objArray2.add(3,"notcommon1");
objArray.add(0,"common1");
objArray.add(1,"common2");
System.out.println("objArray 的数组元素:"+objArray);
System.out.println("objArray2 的数组元素:"+objArray2);
System.out.println("objArray 是否包含字符串common2? : "
+objArray.contains("common1"));
System.out.println("objArray2 是否包含数组 objArray? :"
+objArray2.contains(objArray) );
}
}
- 判断数组是否相等
使用 equals ()方法来判断数组是否相等,返回 true or false。
import java.util.Arrays;
public class test {
public static void main(String[] args) throws Exception {
int[] ary = {1,2,3,4,5,6};
int[] ary1 = {1,2,3,4,5,6};
int[] ary2 = {1,2,3,4};
System.out.println("数组 ary 是否与数组 ary1相等? :"+ Arrays.equals(ary, ary1));
System.out.println("数组 ary 是否与数组 ary2相等? :" + Arrays.equals(ary, ary2));
}
}
Java关于数组操作函数的更多相关文章
- JavaScript中常见的数组操作函数及用法
JavaScript中常见的数组操作函数及用法 昨天写了个帖子,汇总了下常见的JavaScript中的字符串操作函数及用法.今天正好有时间,也去把JavaScript中常见的数组操作函数及用法总结一下 ...
- JavaScript 数组操作函数--转载+格式整理
JavaScript 数组操作函数(部分)--转载+格式整理 今天看了一篇文章,主要讲的对常用的Js操作函数:push,pop,join,shift,unshift,slice,splice,conc ...
- 初探numpy——广播和数组操作函数
numpy广播(Broadcast) 若数组a,b形状相同,即a.shape==b.shape,那么a+b,a*b的结果就是对应数位的运算 import numpy as np a=np.array( ...
- php中数组操作函数
一.数组操作的基本函数数组的键名和值array_values($arr); 获得数组的值array_keys($arr); 获得数组的键名array_flip($arr); 数组中的值与键名互换 ...
- 量化投资_Multicharts数组操作函数_append()追加函数(自定义)
1. Multicharts中关于数组的操作比较麻烦,而且当中所谓的动态数组的定义并不是像其他语言那种的概念.因此要对数组进行元素“”追加“”的话,需要重新更改数组的索引,然后再最后一个位置添加val ...
- js 数组操作函数有:push,pop,join,shift,unshift,slice,splice,concat
(1)push 和 pop 这两个函数都是对数组从尾部进行压入或弹出操作.push(arg1,arg2,...)可以每次压入一个或多个元素,并返回更新后的数组长度.注意如果参数也是数组的话,则是将全部 ...
- 【220】◀▶ IDL 数组操作函数说明
参考:Array Creation Routines —— 创建数组函数参考:Array Manipulation Routines —— 操作数组函数 01 MAX 最大值. 02 MIN ...
- 字符串、数组操作函数 Copy Concat Delete Insert High MidStr Pos SetLength StrPCopy TrimLeft
对字符串及数组的操作,是每个程序员必须要掌握的.熟练的使用这些函数,在编程时能更加得心应手. 1.Copy 功能说明:该函数用于从字符串中复制指定范围中的字符.该函数有3个参数.第一个参数是数据源(即 ...
- Java中数组操作 java.util.Arrays 类常用方法的使用
任何一门编程语言,数组都是最重要和常用的数据结构之一,但不同的语言对数组的构造与处理是不尽相同的. Java中提供了java.util.Arrays 类能方便地操作数组,并且它提供的所有方法都是静态的 ...
随机推荐
- Qt 编写多窗口程序
该文章原创于Qter开源社区(www.qter.org),作者yafeilinux,转载请注明出处! 导语 程序要实现的功能是:程序开始出现一个对话框,按下按钮后便能进入主窗口,如果直接关闭 ...
- python学习(25) BeautifulSoup介绍和实战
BeautifulSoup是python的html解析库,处理html非常方便 BeautifulSoup 安装 pip install beautifulsoup4 BeautifulSoup 配合 ...
- sort 与 sorted 区别
sort 与 sorted 区别: sort 只是应用在 list 上的方法,(就地排序无返回值). sorted 是内建函数,可对所有可迭代的对象进行排序操作,(返回新的list). 语法 sort ...
- PHP变量的传值和引用
问题: 1.PHP变量的存储.取值方式如何? 2.变量赋值时,普通传值和引用传值分别是什么意思?有何区别? 3.unset被赋值的变量会对两种赋值后原值和新值的影响? 变量的存储.取值形式: 变量 ...
- python---Django中模型类中Meta元对象了解
Django中模型类中Meta元对象了解 1.使用python manage.py shell 进入编辑命令行模式,可以直接进入项目(为我们配置好了环境) python manage.py shell ...
- 安装VisualSVN Server 报错The specified TCP port is occupied
安装过程中报错,如下图所示. The specified TCP port is occupied by another service.Please stop that service or use ...
- Mac下配置环境变量(转)
说明:Mac下一般使用bash作为默认shell 一.Mac系统的环境变量,加载顺序为: /etc/profile /etc/paths ~/.bash_profile ~/.bash_login ~ ...
- 把一个IEEE754浮点数转换为IBM370浮点数的C#代码
把一个IEEE754浮点数转换为IBM370浮点数的C#代码. 在这个网页上有古老的IBM370浮点格式的说明. // http://en.wikipedia.org/wiki/IBM_Floatin ...
- BZOJ4819 新生舞会
4819: [Sdoi2017]新生舞会 Time Limit: 10 Sec Memory Limit: 128 MB Description 学校组织了一次新生舞会,Cathy作为经验丰富的老学 ...
- 20155235 2016-2017-2 《Java程序设计》第5周学习总结
20155235 2016-2017-2 <Java程序设计>第5周学习总结 教材学习内容总结 第八章知识点 语法与继承结构 使用try.catch 异常继承结构 要抓还是要抛 贴心还是造 ...