java两个数组合并为一个数组

news/2024/10/17 19:24:06/

1、int[]数组

int[] a = {1,2,6};
int[] b = {7,8,9};

合并结果为:

[1, 2, 6, 7, 8, 9] 

2、String[]数组

String[] a = {"阿","java","so","easy"};
String[] b = {"is","very","good"};

合并结果为:

[阿, java, so, easy, is, very, good]

方法一:使用for循环

1、使用两个for循环将数组 a 和数组 b 中的元素复制到数组 c 中

2、第一个for循环将数组 a 中的元素复制到数组 c 的前半部分

3、第二个for循环将数组 b 中的元素复制到数组 c 的后半部分

// int[]数组
int[] c = new int[a.length + b.length];
for (int i = 0; i < a.length; i++) {c[i] = a[i];
}
for (int i = 0; i < b.length; i++) {c[a.length +i] = b[i];
}
// String[]数组
String[] c = new String[a.length + b.length];
for (int i = 0; i < a.length; i++) {c[i] = a[i];
}
for (int i = 0; i < b.length; i++) {c[a.length + i] = b[i];
}

方法二:使用Arrays.copyOf()方法 

1、使用Arrays.copyOf ()方法创建一个新的数组,并将数组 a 中的元素复制到数组 c 中

2、使用System.arraycopy ()方法将数组 b 中的元素复制到数组 c 的后半部分。

// int[]数组
int[] c = Arrays.copyOf(a,a.length+b.length);
System.arraycopy(b,0,c,a.length,b.length);
// String[]数组
String[] c = Arrays.copyOf(a,a.length+b.length);
System.arraycopy(b,0,c,a.length,b.length);

方法三:使用IntStream.concat方法

1、使用Arrays.stream() 方法将数组 a 和数组 b 转换为 IntStream对象

2、使用Stream.concat() 方法将这两个 IntStream对象连接成一个单独的流

3、使用 toArray() 方法将连接后的流转换为一个数组 c

// int[]数组
int[] c = IntStream.concat(Arrays.stream(a), Arrays.stream(b)).toArray();
// String[]数组
Object[] c = Stream.concat(Arrays.stream(a), Arrays.stream(b)).toArray();

方法四:使用System.arraycopy()方法

1、第一个System.arraycopy() 方法,将数组 a 中的元素复制到数组 c 的前半部分

2、第二个System.arraycopy() 方法,将数组 b 中的元素复制到数组 c 的后半部分。

方法:System.arraycopy(Object src, int srcPos, Object dest, int destPos, int length);

参数:
src – 源数组。

srcPos – 源数组中的起始位置。

dest – 目标数组。

destPos – 目标数据中的起始位置。

length – 要复制的数组元素的数量

// int[]数组
int[] c = new int[a.length + b.length];
System.arraycopy(a,0,c,0,a.length);
System.arraycopy(b,0,c,a.length,b.length);
// String[]数组
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);

http://www.ppmy.cn/news/386852.html

相关文章

[CSP-S 2022] 策略游戏

[CSP-S 2022] 策略游戏 题目描述: 小 L 和小 Q 在玩一个策略游戏。 有一个长度为 n 的数组 A 和一个长度为 m 的数组 B&#xff0c;在此基础上定义一个大小为 nm 的矩阵 C&#xff0c;满足 Cij​Ai​Bj​。所有下标均从 1 开始。 游戏一共会进行 q 轮&#xff0c;在每一轮游…

Spring框架有哪些主要模块?分别有哪些作用

Spring框架有以下主要模块&#xff1a; Spring Core&#xff1a;Core封装包是框架的最基础部分&#xff0c;提供IOC和依赖注入特性。这里的基础概念是BeanFactory&#xff0c;它提供对Factory模式的经典实现来消除对程序性单例模式的需要&#xff0c;并真正地允许你从程序逻辑…

9550电机_扭矩公式9550是什么 电机扭矩计算公式T=9550P/n怎么算

1, 电机扭矩计算公式T9550P/n怎么算 针对你的问题有公式可参照分析&#xff1a;电机功率&#xff1a;P1.732*U*I*cosφ电机转矩&#xff1a;T9549*P/n ; 电机功率 转矩9550*输出功率/输出转速 转矩9550*输出功率/输出转速P T*n/9550公式推导电机功率&#xff0c;转矩&#xff…

androidstudio adb突然抽风的各种问题

今天是个阳光明媚的好日子&#xff0c;我带好红领巾背上小书包高高兴兴去上班&#xff0c;用androidstudio运行程序后&#xff0c;发现logcat查看日志区不能选择已部署app的applicationId&#xff0c;昨天还好使&#xff0c;咋今天就不好使了 咋地都没有&#xff0c;看整个手机…

[数据分析与可视化] Python绘制数据地图2-GeoPandas地图可视化

本文主要介绍GeoPandas结合matplotlib实现地图的基础可视化。GeoPandas是一个Python开源项目&#xff0c;旨在提供丰富而简单的地理空间数据处理接口。GeoPandas扩展了Pandas的数据类型&#xff0c;并使用matplotlib进行绘图。GeoPandas官方仓库地址为&#xff1a;GeoPandas。G…

Pact Pharma完成9550万美元B轮融资 打造个性化癌症诊疗

加州海沃德2018年7月18日电 /美通社/ -- Pact Pharma 日前已筹集了1.2亿美元的风险融资&#xff0c;用于攻克迄今为止最为复杂的个性化诊疗形式之一的靶向新抗原T细胞。在谷歌旗下Google Venture的支持下&#xff0c;公司正在运用信息化思维来打造这一超个性化诊疗方案。 这一方…

#pc问题# 有关DPTF(Intel(R) Dynamic Platform and Thermal Framework Generic Participant)

本文主要是针对戴尔 xps15 9550 9560 9570三款容易降频的旗舰电脑的DPTF卸载指南&#xff0c;这三台旗舰级笔记本&#xff0c;都有i7中端独显的配置&#xff0c;无奈都很容易降频&#xff0c;降频的时候最夸张性能能从3.4Ghz降到0.45GHz&#xff0c;十分之一啊&#xff0c;酷睿…

请问XPS15 9550 触控板手势去哪里设定?

http://www.5i01.cn/topicdetail.php?f236&t4849879 google好久只有找到win10内建的触控板设定. 官网好像也找不到XPS15 9550的触控板驱动..请问手势方面的设定要去哪里设定呢?例如:浏览网页可以设定几指回到上一页的那种设定-----------------------------------------…