java合并数组,java合并数组去重排序

发布时间:2023-01-07

本文目录一览:

1、java怎么将2个数组的数据合并?
2、Java中如何把两个数组合并为一个
3、[java编写合并两个数组,{1,2,3,4,5} {4,5,6,7,8}](#java编写合并两个数组,{1,2,3,4,5} {4,5,6,7,8})
4、[java中怎么合并两个数组 简单明了的](#java中怎么合并两个数组 简单明了的)
5、Java如何合并两个数组

java怎么将2个数组的数据合并?

concat()方法是对字符串的操作,不是对整数或数组。

concat()用法:

String a = "abc";
String b = "edf";
String c = a.concat(b);
// c的值为"abcdef"

数组可以用 for 循环合并:

public static void main(String[] args){
    int a[] = {1,7,9,11,13,15,17,19};
    int b[] = {2,4,6,8,10};
    int aL = a.length;
    int bL = b.length;
    int length = aL + bL;
    int[] c = new int[length];
    for(int i = 0; i < length; i++){
        if(i < aL){
            c[i] = a[i];
        } else {
            c[i] = b[i - aL];
        }
    }
    for(int i = 0; i < c.length; i++){
        System.out.print(c[i] + " ");
    }
}

Java中如何把两个数组合并为一个

import java.util.Arrays;
// Java中如何把两个数组合并为一个
public class gog {
    public static void main(String[] args) {
        String [] str1 = {"J","a","v","a","中"};
        String [] str2 = {"如","何","把","两","个","数","组","合","并","为","一","个"};
        int strLen1 = str1.length; // 保存第一个数组长度
        int strLen2 = str2.length; // 保存第二个数组长度
        str1 = Arrays.copyOf(str1, strLen1 + strLen2); // 扩容
        System.arraycopy(str2, 0, str1, strLen1, strLen2); // 将第二个数组与第一个数组合并
        System.out.println(Arrays.toString(str1)); // 输出数组
    }
}

java编写合并两个数组,{1,2,3,4,5} {4,5,6,7,8}

分为两步:

  1. 连接两个数组。
  2. 清除重复的元素。
import java.util.Arrays;
public class Combine {
    public static void main(String[] args) {
        int a[] = {1,2,3,4,5};
        int b[] = {4,5,6,7,8};
        int temp[] = new int[a.length + b.length];
        // 连接两个数组
        for(int i = 0; i < a.length; i++) {
            temp[i] = a[i];
        }
        for(int i = 0; i < b.length; i++) {
            temp[a.length + i] = b[i];
        }
        // 开始清除重复元素
        int size = temp.length;
        for(int i = 0; i < temp.length; i++) {
            if(temp[i] != -1) {
                for(int j = i + 1; j < temp.length; j++) {
                    if(temp[i] == temp[j]) {
                        temp[j] = -1; // 将发生重复的元素赋值为-1
                        size--;
                    }
                }
            }
        }
        int[] result = new int[size];
        for(int i = 0, j = 0; j < size && i < temp.length; i++, j++) {
            if(temp[i] == -1) {
                j--;
            } else {
                result[j] = temp[i];
            }
        }
        // 打印结果
        System.err.println(Arrays.toString(result));
    }
}

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如何合并两个数组

java数组合并问题

三种字符数组合并的方法

public static String[] getOneArray() {
    String[] a = { "0", "1", "2" };
    String[] b = { "0", "1", "2" };
    String[] c = new String[a.length + b.length];
    for (int j = 0; j < a.length; ++j) {
        c[j] = a[j];
    }
    for (int j = 0; j < b.length; ++j) {
        c[a.length + j] = b[j];
    }
    return c;
}
public static Object[] getTwoArray() {
    String[] a = { "0", "1", "2" };
    String[] b = { "0", "1", "2" };
    List<String> aL = Arrays.asList(a);
    List<String> bL = Arrays.asList(b);
    List<String> resultList = new ArrayList<>();
    resultList.addAll(aL);
    resultList.addAll(bL);
    Object[] result = resultList.toArray();
    return result;
}
public static String[] getThreeArray() {
    String[] a = { "0", "1", "2", "3" };
    String[] b = { "4", "5", "6", "7", "8" };
    String[] c = new String[a.length + b.length];
    System.arraycopy(a, 0, c, 0, a.length);
    System.arraycopy(b, 0, c, a.length, b.length);
    return c;
}

1. 两个字符数组合并的问题

public String[] getMergeArray(String[] al, String[] bl) {
    String[] a = al;
    String[] b = bl;
    String[] c = new String[a.length + b.length];
    System.arraycopy(a, 0, c, 0, a.length);
    System.arraycopy(b, 0, c, a.length, b.length);
    return c;
}

2. 字符数组和整形数组合并问题

public int[] getIntArray(int[] al, String[] bl) {
    int[] a = al;
    String[] b = bl;
    int[] ia = new int[b.length];
    for(int i = 0; i < b.length; i++) {
        ia[i] = Integer.parseInt(b[i]);
    }
    int[] c = new int[a.length + ia.length];
    System.arraycopy(a, 0, c, 0, a.length);
    System.arraycopy(ia, 0, c, a.length, ia.length);
    return c;
}