JAVA中的数组插入与删除指定元素

JAVA中的数组插入与删除指定元素今天学了Java的数组,写了数组的插入和删除,本人小白,写给不会的小白看,大神请忽略,有错请大家指出来;/**给数组指定位置数组的插入*/importjava.util.*;publicclassArrayInsert{publicstaticvoidmain(String[]args){System.out.println(“请用键

大家好,又见面了,我是你们的朋友全栈君。

今天学了Java的数组,写了数组的插入和删除,本人小白,写给不会的小白看,大神请忽略,有错请大家指出来;

/** 给数组指定位置数组的插入 */
import java.util.*;
public class ArrayInsert{ 
   
	public static void main(String []args){ 
   
		System.out.println("请用键盘输入5个数:");
		int [] array =new int[10];
		Scanner sc=new Scanner(System.in);
		
		//通过键盘向数组输入数
		for(int i=0;i<array.length-5;i++){ 
   
			array[i]=sc.nextInt();
		}
		//遍历数组
		System.out.print("原数组为:");
		for(int a:array){ 
   
			System.out.print(" "+a);
		}
		//向指定的位置插入数
		System.out.println("\n请输入插入位置:有效位置为0-----"+(array.length-1));
		int index=sc.nextInt();
		System.out.println("\n请输入插入的值-----");
		int num=sc.nextInt();
		
		
		//调用静态函数index
		//遍历插入后的数组
			System.out.println("插入元素之后的数组遍历:");
			Insert(index,num,array);
		     for(int i=0;i<array.length;i++){ 
   
			System.out.print(" "+array[i]);
		}
		
	}
	//向数组指定位置插入数据方法
	public static int[] Insert(int index,int num,int a[]){ 
   
			//如果有元素,在索引之后的元素向后移一位,
			for(int   a[i]=a[i-1];
			}
			a[index]=num;
 return a;		
	}
}
//删除数组指定位置的数字。
import java.util.*;
public class ArrayDelete{ 
   
	public static void main(String args[]){ 
   
		System.out.println("请用键盘输入5个数:");
		int [] array =new int[10];
		Scanner sc=new Scanner(System.in);
		
		//通过键盘向数组输入数
		for(int i=0;i<array.length-5;i++){ 
   
			array[i]=sc.nextInt();
		}
		//遍历数组
		System.out.print("原数组为:");
		for(int a:array){ 
   
			System.out.print(" "+a);
		}
		//删除在指定位置的数字
		System.out.println("\n输入你要删除的位置: 范围在0---"+(array.length-1));
		int index=sc.nextInt();
		delete(index,array);//调用delete方法
		//删除之后的遍历
		System.out.println("删除之后的遍历:");
		for(int i=0;i<array.length;i++){ 
   
			System.out.print(" "+array[i]);
		}
	}
	 //数组的特性是,一旦初始化,则长度确定,所以要删除数组中元素,并且长度也随着删除而改变,则要重新建立数组
	 /** *删除方式1 */
    public int[] delete(int index, int array[]) { 
   
        //数组的删除其实就是覆盖前一位
        int[] arrNew = new int[array.length - 1];
        for (int i = index; i < array.length - 1; i++) { 
   
            array[i] = array[i + 1];
        }
        System.arraycopy(array, 0, arrNew, 0, arrNew.length);
        return arrNew;
    }
/* *删除方式2 * 比如有数组 * int[] ints = {1, 2, 3}; * * @param index 注意:下标是从0开始的 * @param array 数组; * @return 删除之后的数组 */
    public static int[] deleteByIndex(int index, int array[]) throws Exception { 
   
        if (index < 0 || index > array.length-1) { 
   
            throw new Exception("您输入的下标不在数组的边界内,请数组" + 0 + "到" + (array.length - 1) + "的范围");
        }
        //数组的删除其实就是覆盖前一位
        int[] arrNew = new int[array.length - 1];
        for (int i = 0; i < array.length - 1; i++) { 
   
            if (i < index) { 
   
                arrNew[i] = array[i];
            } else { 
   
                arrNew[i] = array[i + 1];
            }
        }
        return arrNew;
    }
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/153287.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mysql中10049是什么错误_【学习笔记】Oracle数据库10049用于分析SQL解析笔记案例[通俗易懂]

    mysql中10049是什么错误_【学习笔记】Oracle数据库10049用于分析SQL解析笔记案例[通俗易懂]【学习笔记】Oracle数据库10049用于分析SQL解析笔记案例时间:2016-11-0513:54来源:Oracle研究中心作者:HTZ点击:次天萃荷净Oracle研究中心学习笔记:分享一篇关于Oracle数据库关于SQL解析的详细文档,该文档详细介绍使用10049event事件来分析SQL语句的解析笔记。1,数据库版本SQL>select*fromv$ve…

    2022年10月1日
    0
  • 深蓝病毒关闭端口_445端口关闭方法

    深蓝病毒关闭端口_445端口关闭方法计算机被永恒之蓝感染后会出一些不明所以的问题,我电脑上不定时蓝屏,同事电脑上也是,网上搜索了解决方法,包括以下几种:1)使用360杀毒,记得用最新的版本。2)自己下windows对应补丁。3)关闭445端口。——————————————————-注意:(1)关闭了445端口要重启后才会…

    2022年10月17日
    0
  • linux fusion io简介,linux – 收集FusionIO库存

    linux fusion io简介,linux – 收集FusionIO库存我需要编写一个脚本,从Linux服务器收集FusionIO驱动器的库存数据.我能找到的唯一方法是fio-status实用程序,但它的目的是输出人类可读的文本,而不是机器可解析的文本.我可以刮它,但那很脏.我检查/proc/fusion但它没有足够的信息可供任何使用.我希望有更好的方法,可以通过某种方式与libiodrivesdk.so或已经存在的实用程序进行交互来完成这项工作.我最初使用的是…

    2022年10月22日
    0
  • 暂时性死区 理解

    暂时性死区 理解let和const声明的变量不存在变量提升,其作用域都是块级作用域,凡是在声明变量之前使用变量就会报错,所以,在代码块内,使用let命令声明变量之前,该变量都是不可用的。这在语法上,称为“暂时性死区”(temporaldeadzone,简称TDZ)。if(true){//死区开始lzp=’lut’;//ReferenceErrorconsole….

    2022年6月26日
    37
  • 如何计算经纬度之间的距离_根据经纬度算距离

    如何计算经纬度之间的距离_根据经纬度算距离用php计算两个指定的经纬度地点之间的距离,代码:/***求两个已知经纬度之间的距离,单位为米*@paramlng1,lng2经度*@paramlat1,lat2纬度*@returnfloat距离,单位米*@editwww.jbxue.com**/functiongetdistance($lng1,$lat1,$lng2,$lat2){//将角度转为狐度$radLat1=deg2r…

    2022年9月2日
    2
  • 常见外包公司汇总[通俗易懂]

    常见外包公司汇总[通俗易懂]1.博朗软件Bleum(上海)2.中软国际(北京)3.东软集团Neusoft(沈阳)4.博彦科技BeyondSoft(北京)5.中电金信(北京)6.法本信息(深圳)7.浙大网新Insigma(杭州)8.奥博杰天Objectiva(北京)9.浪潮Inspur(济南)10.软通动力iSoftStone(北京)11.福瑞博德Freeborders(深圳)12.信必优Symbio(北京)13.大展科技Achievo(深圳)14.恒生电子hundsun(杭州)15.日电卓越软

    2022年4月29日
    105

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号