JAVA 数据类型数组
普通int:
public class Array { //成员变量 private int[] data; private int size; //构造函数,传入数组的容量capacity构造Array public Array(int capacity){ data=new int[capacity]; size=0; } //无参数构造函数,默认数组的容量capacity=10 public Array(){ this(10); } //获取数组中元素的个数 public int getSize(){ return size; } //获取数组的容量 public int getCapacity(){ return data.length; } //返回数组是否为空 public boolean isEmpty(){ return size==0; } //向所有元素后添加一个新元素 public void addLast(int e){ add(size, e); } //在所有元素前面添加一个新元素 public void addFirst(int e){ add(0, e); } //获取index索引的位置的元素 int get(int index){ if(index<0||index>=size) throw new IllegalArgumentException("Get failed.Index is illegal."); return data[index]; } //修改index索引位置的元素为e void set(int index,int e){ if(index<0||index>=size) throw new IllegalArgumentException("Get failed.Index is illegal."); data[index]=e; } //查找数组中是否有元素e public boolean contains(int e){ for (int i=0;i=size) throw new IllegalArgumentException("Remove failed.Index is illegal."); int ret=data[index]; for(int i=index+1;isize) throw new IllegalArgumentException("Add failed.Require index>=0 and index<=size."); for(int i=size-1;i>=index ;i--) data[i+1]=data[i]; data[index]=e; size++; } @Override public String toString(){ StringBuilder res=new StringBuilder(); res.append(String.format("Array:size=%d,capacity=%d\n", size,data.length)); res.append('['); for(int i=0;i泛型:
public class Array { //成员变量 private E[] data; private int size; //构造函数,传入数组的容量capacity构造Array public Array(int capacity){ data=(E[])new Object[capacity]; size=0; } //无参数构造函数,默认数组的容量capacity=10 public Array(){ this(10); } //获取数组中元素的个数 public int getSize(){ return size; } //获取数组的容量 public int getCapacity(){ return data.length; } //返回数组是否为空 public boolean isEmpty(){ return size==0; } //向所有元素后添加一个新元素 public void addLast(E e){ add(size, e); } //在所有元素前面添加一个新元素 public void addFirst(E e){ add(0, e); } //获取index索引的位置的元素 public E get(int index){ if(index<0||index>=size) throw new IllegalArgumentException("Get failed.Index is illegal."); return data[index]; } //修改index索引位置的元素为e public void set(int index,E e){ if(index<0||index>=size) throw new IllegalArgumentException("Get failed.Index is illegal."); data[index]=e; } //查找数组中是否有元素e public boolean contains(E e){ for (int i=0;i=size) throw new IllegalArgumentException("Remove failed.Index is illegal."); E ret=data[index]; for(int i=index+1;isize) throw new IllegalArgumentException("Add failed.Require index>=0 and index<=size."); if(size==data.length) resize(2*data.length); for(int i=size-1;i>=index ;i--) data[i+1]=data[i]; data[index]=e; size++; } @Override public String toString(){ StringBuilder res=new StringBuilder(); res.append(String.format("Array:size=%d,capacity=%d\n", size,data.length)); res.append('['); for(int i=0;i测试:
public class Student { private String name; private int score; public Student(String studentName,int studentScore){ name=studentName; score=studentScore; } public String toString(){ return String.format("Student(name:%s,score:%d)", name,score); } public static void main(String[] args){ Array arr=new Array<>(); arr.addLast(new Student("Alice", 100)); arr.addLast(new Student("Bob", 66)); arr.addLast(new Student("CharLie", 88)); System.out.println(arr); }}
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
暂时没有评论,来抢沙发吧~