关于Java中数组的常用操作方法

本文介绍Java中数组的基本操作,包括声明、输出、检查元素、连接、逆向输出及移除元素的方法。通过示例代码展示了如何利用Java标准库和第三方库如Apache Commons Lang简化数组处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 声明一个数组

1 String[] arr1 = new String[5];  
2 String[] arr2 = {"a","b","c", "d", "e"};  
3 String[] arr3= new String[]{"a","b","c","d","e"};  

2. 输出一个数组

复制代码
1 int[] arr = { 1, 2, 3, 4, 5 };  
2 String arrString = Arrays.toString(arr);  
3    
4 // 直接输出,为内存地址
5 System.out.println(arr);  
6 // [I@139a55
7    
8 System.out.println(arrString );  
9 // [1, 2, 3, 4, 5]  
复制代码

3. 检查一个数组是否包含某值

1 String[] arr= { "a", "b", "c", "d", "e" };  
2 boolean b = Arrays.asList(arr).contains("a");  
3 System.out.println(b);  
4 // true  

4. 连接两个数组

1 //使用Apache Commons Lang library
2 
3 1 int[] arr1 = { 1, 2, 3, 4, 5 };  
4 2 int[] arr2= { 6, 7, 8, 9, 10 };  
5 3 int[] combArr = ArrayUtils.addAll(arr1 , arr2); 

 

复制代码
// System.arraycopy()
1 static String[] concat(String[] a, String[] b) {
2       String[] c = new String[a.length + b.length];
3       System.arraycopy(a, 0, c, 0, a.length);
4       System.arraycopy(b, 0, c, a.length, b.length);
5       return c;
6  }
复制代码
复制代码
1 //Arrays.copyOf()
2 
3 public static int[] concat(int[] first, int[] second) {
4     int[] result = Arrays.copyOf(first, first.length + second.length);
5     System.arraycopy(second, 0, result, first.length, second.length);
6     return result;
7 }
复制代码

5. 逆向输出一个数组

复制代码
1 // Apache Commons Lang library
2 
3 int[] arr= { 1, 2, 3, 4, 5 };  
4 ArrayUtils.reverse(intArray);  
5 System.out.println(Arrays.toString(intArray));  
6 //[5, 4, 3, 2, 1]  
复制代码
复制代码
1 int[] arr = { 1, 2, 3, 4, 5 };
2 int[] revArr = new int[arr.length];
3 for(int i = 0; i < arr.length; i++){
4     revArr[i] = arr[arr.length - i -1];
5 }
6 System.out.println(Arrays.toString(revArr));
7 
8 //[5, 4, 3, 2, 1]
复制代码

6. 移除数组中的元素

1 // Apache common lang  
2 
3 int[] arr= { 1, 2, 3, 4, 5 };  
4 int[] removed = ArrayUtils.removeElement(intArray, 3);//create a new array  
5 System.out.println(Arrays.toString(removed))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值