创建面向对象数组-实现数组的一些增删改查等功能
2019-04-23 18:12
281 查看
package demo1.util; import java.util.Arrays; public class Myarray { //用于存储数据的数组 private int[] elements; public Myarray() { elements=new int[0]; } //获取数组长度的方法 public void size() { System.out.println(elements.length); } //往数组的末尾添加一个元素 public void add(int element) { //创建一个新的数组 int[] newArray=new int[elements.length+1]; //把原数组中的元素复制到新数组中 for(int i=0;i<elements.length;i++) { newArray[i]=elements[i]; } //把添加的元素放入新数组中 newArray[elements.length]=element; // 使用新数组替换旧数组 elements=newArray; } //打印所有元素到控制台 public void show() { System.out.println(Arrays.toString(elements)); } //删除数组中的元素 public void delete(int index) { //判断下表师傅越界(如果index小于零或者大于数组长度-1,则输出"下标越界".) if (index<0||index>elements.length-1){ throw new RuntimeException("下标越界"); } int[] newArr=new int[elements.length-1]; //复制原有数据到新数组 for(int i=0;i<newArr.length;i++) { if (i<index) { newArr[i]=elements[i]; }else { newArr[i]=elements[i+1]; } } //用新数组替换旧数组 elements=newArr; } // 获取某个元素 public int get(int index) { return elements[index]; } //插入一个元素到数组指定位置 public void insert(int index,int element) { //创建一个数组 int[] newArr=new int[elements.length+1]; //将数组中的元素放入新数组中 //遍历原有的数组 for(int i=0;i<newArr.length;i++) { //目标位置之前的元素直接赋值 if(i<index) { newArr[i]=elements[i]; //目标位置之后的元素赋值(除了index) }else { newArr[i+1]=elements[i]; } //插入新的元素 newArr[index]=element; //用新数组替换旧数组 elements=newArr; } } // 替换某位置的元素 public void set(int index,int element) { //判断下表师傅越界(如果index小于零或者大于数组长度-1,则输出"下标越界".) if (index<0||index>elements.length-1){ throw new RuntimeException("下标越界"); } elements[index]=element; } }
相关文章推荐
- 创建一个数组实现一些功能
- 通过数组实现类似于集合的功能(包含动态扩容、前平移、后平移、增删改查)
- 使用MVC5+Entity Framework6的Code First模式创建数据库并实现增删改查功能
- java创建数组,实现增删改查
- mongoose创建数据结构,实现基本增删改查功能
- 数据结构:java创建串并实现增删改查功能
- 关于单向链表创建以及一些简单的增删查改功能
- 利用数组创建的顺序表实现各种功能
- 利用数组创建的顺序表实现各种功能
- avalon实现数组动态创建功能
- 20.购物车商品价格的总和(里面有一些功能没有实现,创建textview布局对象,然后for()遍历数据求和)
- mysql数据库在ubuntu虚拟机下的开启和实现创建数据库实现简单增删改查功能(一)
- java创建单链表及增删改查功能实现
- 创建数据库类实现 增删改查功能
- 创建面向对象的Javascript实现Ajax访问QQ留言板
- BootstrapTable与KnockoutJS相结合实现增删改查功能【一】
- ★实验 9-2 1. 补全代码,实现以下功能 a) 调用pipe()创建无名管道 b) 调用fork创建一个子进程 c) 在父进程中向管道写入 “helloworld”, 同时打印出PID和写入
- 自己实现vector的一些简单功能
- 在SQL SErver中实现数组功能
- JS基于面向对象实现的拖拽功能示例