博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
复制数组元素,合并两个已知数组,String数组类型,增强for循环,native,Array.copyof()扩容数组创建新数组,合并数组,Array类的方法对数组进行截断或者扩容
阅读量:3940 次
发布时间:2019-05-24

本文共 3025 字,大约阅读时间需要 10 分钟。

将两个数组合并为一个数组,如果第二个数组的长度不够,创建新数组存储,如果第二个数组足够长,直接将第一个数组合并到第二个数组中。

在这里插入图片描述

package com.javasm.array;import jdk.management.resource.internal.inst.SocketOutputStreamRMHooks;import java.util.Arrays;/** * @author: JAVASM * @classNAME: ArrayDemo05 * @description: * @date: 2021/3/29 9:25 * @version:0.1 * @since:1.8 */public class ArrayDemo05 {
//将两个数组合并为一个数组,如果第二个数组的长度不够,创建新数组存储 public static void main(String[] args) {
String[] str1={
"1","2","3"}; String[] str2=new String[8]; str2[0]="a"; str2[1]="b"; str2[2]="c"; str2[3]="d"; System.out.println("第一个数组为:"+Arrays.toString(str1)); System.out.println("第二个数组为:"+Arrays.toString(str2)); int len1=str1.length; int len2=str2.length; int index; for (index = 0; index < len2; index++) {
//判断数组元素是否为null可以直接用== if(str2[index]==null){
//此处不应该用return,return直接退出方法体了,流程控制应该用break或者continue来结束循环 break; } } int remainSpace=len2-index; System.out.println("第二个数组的有效长度为:"+index); System.out.println("第二个数组的剩余长度为:"+remainSpace); if(remainSpace
len1){
for (String b:str1) {
//此处应该是数组2的有效长度++ str2[index++]=b; } } System.out.println("合并后的数组为:"+Arrays.toString(str2)); }}程序输出结果如下:第一个数组为:[1, 2, 3]第二个数组为:[a, b, c, d, null, null, null, null]第二个数组的有效长度为:4第二个数组的剩余长度为:4合并后的数组为:[a, b, c, d, 1, 2, 3, null]Process finished with exit code 0

native

native修饰的是本地方法栈,java语言没有能力操作内存,所以底层通过C语言来操作内存

调用Array类的方法对数组进行截断或者扩容

截断:将一个数组在某个位置截断。

在这里插入图片描述
利用foreach和Array工具类来扩容数组创建新数组,合并数组,优化上面的代码

package com.javasm.array;import jdk.management.resource.internal.inst.SocketOutputStreamRMHooks;import java.util.Arrays;/** * @author: JAVASM * @classNAME: ArrayDemo05 * @description: * @date: 2021/3/29 9:25 * @version:0.1 * @since:1.8 */public class ArrayDemo05 {
//将两个数组合并为一个数组,如果第二个数组的长度不够,创建新数组存储 public static void main(String[] args) {
String[] str1={
"1","2","3"}; String[] str2=new String[5]; str2[0]="a"; str2[1]="b"; str2[2]="c"; str2[3]="d"; System.out.println("第一个数组为:"+Arrays.toString(str1)); System.out.println("第二个数组为:"+Arrays.toString(str2)); int len1=str1.length; int len2=str2.length; int index; for (index = 0; index < len2; index++) {
//判断数组元素是否为null可以直接用== if(str2[index]==null){
//此处不应该用return,return直接退出方法体了,流程控制应该用break或者continue来结束循环 break; } } int remainSpace=len2-index; System.out.println("第二个数组的有效长度为:"+index); System.out.println("第二个数组的剩余长度为:"+remainSpace); if(remainSpace
len1){
for (String b:str1) {
//此处应该是数组2的有效长度++ str2[index++]=b; } } System.out.println("合并后的数组为:"+Arrays.toString(str2)); }}

优化后和上面代码输出一致

转载地址:http://bknwi.baihongyu.com/

你可能感兴趣的文章
厦大06应用金融硕士研究生推荐精读书目
查看>>
《越人歌》-诗经
查看>>
Jetty嵌入式服务器的JNDI快速配置指南
查看>>
夜, 北京
查看>>
图示ExtJS商业智能的仪表盘配置系统 - (Season 1)
查看>>
MAC 显示隐藏文件的方法
查看>>
Ext.Ajax教程,及Get和Post请求的使用拾遗
查看>>
Mac下配制Maven过程
查看>>
Mac下的Eclipse3.4反编译插件
查看>>
Mac截图快捷键大全
查看>>
扩展Spring Security-用户密码自定义加密的快速实现
查看>>
Log4j异步日志简明配制
查看>>
扩展Spring Security-国际化终极配制
查看>>
在Mac OS系统下得Linux虚拟机中安装Confluence3
查看>>
在Eclipse中调试Jetty应用的配置(XML配置文件方式)
查看>>
Ext-3.1.0下组件中按钮居中问题的记要
查看>>
MacOS下使用screen命令运行后台程序
查看>>
东北人的幽默,《红男绿女》中经典对白,看过的人都明白
查看>>
印象后海
查看>>
看了这54句,你就看懂了人性
查看>>