「java两个数组合并去重」java两个集合去重
本篇文章给大家谈谈java两个数组合并去重,以及java两个集合去重对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
java中怎么合并两个数组 简单明了的
int[] arr1 = {1,2,3,4,11};
int[] arr2 = {6,7,8,9,10};
int newLength = arr1.length + arr2.length;
int[] arr_target = new int[newLength];
//参数:源数组,源数组起始位置,目标数组,目标数组起始位置,复制长度
System.arraycopy(arr1, 0, arr_target, 0, arr1.length);
System.arraycopy(arr2, 0, arr_target, arr1.length, arr2.length);
//输出合并后数组
for (int i : arr_target) {
System.out.println(i);
}
//排序
Arrays.sort(arr_target);
//输出排序数组
for (int i : arr_target) {
System.out.println(i);
}
//逆序
int[] arr_reverse = new int[newLength];
int flag = 0;
for (int i : arr_target) {
arr_reverse[newLength - flag - 1] = i;
flag++;
}
//输出逆序数组
for (int i : arr_reverse) {
System.out.println(i);
}
数组合并不一定非得遍历
具体的输出题主自己再修改吧
JAVA,用List做,两个数组中数的合并和去除相同元素
package com.ajax.test;
import java.io.File;
import java.io.FileWriter;
import java.util.Arrays;
/**
* 把一个数组的元素复制到另个数组; 去除重复元素不能用SET集合; 每次复制的记录输到一个文件里
*
* @author ajax_2003
* @version 1.0, 2009-7-26
*
*/
public class CopyArrayAndRemoveDuplicate {
private static String FILE_PATH = "d:/abc.txt";
private static File file;
static {
file = new File(FILE_PATH);
}
/**
* 取出冗余数据
*
* @param nums
* 原数组
*/
private int[] removeDuplicate(int[] nums) throws Exception {
int[] tmpArray = new int[nums.length];
int count = 0;
loop: //
for (int i = 0; i nums.length; i++) {
int tmp = nums[i];
for (int j = 0; j count; j++) {
if (tmp == tmpArray[j])
continue loop;
}
tmpArray[count++] = tmp;
log("成功复制了元素" + tmp);// 写日志
}
return copyArray(tmpArray, 0, count);
}
/**
* 拷贝数组
*
* @param srcArray
* 要拷贝的数组
* @param startIndex
* 拷贝起始索引
* @param endIndex
* 拷贝结束索引
* @return 结果数组
*/
private int[] copyArray(int[] srcArray, int startIndex, int endIndex)
throws Exception {
if (endIndex = startIndex)
throw new Exception("Argumens wrong!");
int[] desArray = new int[endIndex - startIndex];
System.arraycopy(srcArray, startIndex, desArray, 0, desArray.length);
return desArray;
}
/**
* 输出操作日志(即: 每次复制的记录输到一个文件里)
*
* @param oprate
*/
private void log(String oprate) {
FileWriter out = null;
try {
out = new FileWriter(file, true);
out.write(oprate + "\r\n");
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (out != null)
out.close();
out = null;
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
public static void main(String[] args) {
int[] nums = { 1, 223, 1, 2, 2, 2, 3, 2, 3, 34, 45, 5, 5, 3, 23, 2, 2,
3, 4, 5, 5, 6, 7, 78, 8, 9, 34, 90, 45, 675, 4, };
int[] finalArray;
try {
finalArray = new CopyArrayAndRemoveDuplicate()
.removeDuplicate(nums);
System.out.println(Arrays.toString(finalArray));
} catch (Exception e) {
e.printStackTrace();
}
}
}
有些地方可能考虑的不完全,见谅!
//合并数组并排序
public void arrCopy() {
int[] a = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int[] b = { 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000 };
System.arraycopy(a, 2, b, 5, 5);
for(int n : b){
System.out.print(n+",");
}
System.out.println();
}
//去掉重复元素
public static void main(String args[]) {
int[] arr = { 1, 2, 2, 3, 3, 4, 4, 5, 5, 5, 6, 6, 7, 8, 9, 9, 10, 11, 11,
11, 12, 12, 13, 14, 14, 15 }; // 预设数据数组
int index = 1; // 保存最后一个不重复的位置
int last = arr[0];
for (int i = 1; i arr.length; i++) {
if (arr[i] != last) {
arr[index] = arr[i];
last = arr[index];
index++;
}
}
int[] rtn = new int[index];
System.arraycopy(arr, 0, rtn, 0, index);
System.out.println(Arrays.toString(rtn));
}
Java合并两个数组,把相同的数据都去掉(不是去重!不是去重!不是去重!)?
public static void main(String[] args) {
int[] arr = new int[]{1,2,3,4};
int[] arr1 = new int[]{3,4,5,6};
ListInteger list = combineArray(arr, arr1);
int size = list.size();
int[] arrNew = new int[size];
for (int i =0; i size; i ++) {
arrNew[i] = list.get(i);
}
for (int i =0; i size; i ++) {
System.out.println(arrNew[i]);
}
}
public static ListInteger combineArray(int[] arr, int[] arr1) {
ListInteger list = Arrays.stream(arr).boxed().collect(Collectors.toList());
ListInteger list1 = Arrays.stream(arr1).boxed().collect(Collectors.toList());
ListInteger listAll = new ArrayList();
listAll.addAll(list);
listAll.addAll(list1);
list1.retainAll(list);
listAll.removeAll(list1);
return listAll;
}
关于java两个数组合并去重和java两个集合去重的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-12-01,除非注明,否则均为
原创文章,转载请注明出处。