当前位置: 首页 > news >正文

潍坊市作风建设年网站手机网站前

潍坊市作风建设年网站,手机网站前,老榕树智能建站软件,手机能建网站不List接口 List是一个接口#xff0c;它继承Collection接口#xff0c;Collection接口中的一些常用方法 List也有一些常用的方法。List是一个接口#xff0c;它并不能直接实例化#xff0c;ArrayList和LinkedList都实现了List接口#xff0c;它们的常用方法都很相似。 Ar…List接口  List是一个接口它继承Collection接口Collection接口中的一些常用方法 List也有一些常用的方法。List是一个接口它并不能直接实例化ArrayList和LinkedList都实现了List接口它们的常用方法都很相似。 ArrayList 认识ArrayList ArrayList是一个类它实现了List接口。ArrayList内部其实是一个数组首先会默认一个初始数组容量如果数组容量不足就需要扩容来存放数据扩容是当前数组的一倍。通过一些方法进行存放它继承类List接口中的所有方法。ArrayList通常都是以泛型的方式实现的所以使用这个类时要先实例化一个对象ArrayList arrayList  new ArrayList()。 顺序表就是地址连续的一块空间用来存储数据的线性结构。ArrayList其实就像一个顺序表它将数据存储在数组中然后对这个数组通过一些方法进行增删改查。 ArrayList的创建 首先需要构造一个对象可以无参构造较为常用在其里初始化一个数组。 模拟实现ArrayList  下面我们来分析ArrayList是如何实现的 首先我们先了解ArrayList类中有什么有两个属性一个是数组还有一个是计数的还有构造方法也有一系列方法的实现我们现在就来模拟一个ArrayList类 public class MyList {public int[] array;public int size 0;private static final int CAPACITY 5;public MyList(){this.array new int[CAPACITY];this.size size;}//显示public void disPlay(){for(int i 0; i size; i ){System.out.print(array[i] );}System.out.println();}//容量是否为满public boolean isFull(){if(size array.length){return true;}return false;}//增public void add(int data){if (isFull()){//扩容array Arrays.copyOf(array,2*array.length);}array[size] data;size;}//位置是否合法public void isLegal(int pos){if (pos 0 || pos size - 1){//System.out.println(位置不合法);throw new PosOutException(pos位置不合法);}}//删public void del(int pos){isLegal(pos);for (int i pos; i size; i){array[i] array[i1];}size--;}//改public void change(int pos, int data){isLegal(pos);array[pos] data;}//查找public void find(int data){for (int i 0; i size; i){if(array[i] data){System.out.println(找到了下标为i);return ;}}System.out.println(该数据找不到);}//置为零public void clear(){size 0;} } 一般写完一个方法的时候就先调用一下方法看看是否符合自己所想的如何调用就是在主方法里测试。例如下的方法我使用的是ArrayList自带的方法 public static void main(String[] args) {ArrayListInteger list new ArrayList();list.add(1);list.add(2);list.add(3);list.add(4);list.add(5);} ArrayList的遍历 ArrayList中遍历有三种遍历方法分别是 1.for循环 //1循环遍历 for(int i 0; i list.size(); i){System.out.print(list.get(i) ); } 2.使用增强for循环  //2只遍历 for(Integer x: list){System.out.print(x ); } 3.使用迭代器  //3迭代器 IteratorInteger it list.iterator(); while(it.hasNext()){System.out.print(it.next() ); } System.out.println(); ArrayList常用的方法 构造完就可以对这个对象进行操作例增删该查等使用的话就需要记住常用的方法 我们现在一个一个实现 boolean add(E e);//尾插 public static void main(String[] args) {ArrayListInteger arraylist new ArrayList();arraylist.add(12);//将12插入到数组末尾//arraylist.add(abcd);//泛型为Integer将这个对象限制在这个类型了arraylist.add(23);System.out.println(arraylist);//结果为[12, 23];} void add(int index, E e);//将e插入到index位置  public static void main(String[] args) {ArrayListInteger arraylist new ArrayList();//将index下标的插入element数据arraylist.add(0, 12);arraylist.add(0,23);//arraylist.add(2,23);//该数组中只存在0和1下标位置的数组超过了就会出现数组越界System.out.println(arraylist);//结果为[12, 23];} boolean addAll(Collection? extend E);//尾插c中的元素 public static void main(String[] args) {//创建顺序表ArrayListInteger arraylist1 new ArrayList();arraylist1.add(12);arraylist1.add(23);//创建一个新的顺序表将新的所有数据都尾插到原来顺序表中ArrayListInteger arraylist2 new ArrayList();arraylist2.add(34);arraylist2.add(56);arraylist1.addAll(arraylist2);System.out.println(arraylist1);//结果为[12, 23];} E remove(int index);//删除index位置的元素 public static void main(String[] args) {ArrayListInteger arraylist new ArrayList();arraylist.add(12);arraylist.add(23);//删除下标为0数arraylist.remove(0);System.out.println(arraylist);//结果为[23];} boolean remove(Object o);//删除遇到第一个o public static void main(String[] args) {ArrayListString arrayList new ArrayList();arrayList.add(111);arrayList.add(aaa);arrayList.add(12);arrayList.add(aaa);//删除遇到的第一个o相反没有遇到就不删除arrayList.remove(aaa);arrayList.remove(1);System.out.println(arrayList);} E get(int index);//获取下标index位置元素 public static void main(String[] args) {ArrayListInteger arrayList new ArrayList();arrayList.add(12);arrayList.add(23);//获取下标index位置元素System.out.println(arrayList.get(1));//结果是[23]} E set(int index, E element);//将下标index位置元素设置为element public static void main(String[] args) {ArrayListInteger arrayList new ArrayList();arrayList.add(12);arrayList.add(23);arrayList.add(34);//将下表index位置元素设置为elementarrayList.set(2,555);System.out.println(arrayList);//结果为[12, 23, 555]} void clear();//清空 public static void main(String[] args) {ArrayListInteger arrayList new ArrayList();arrayList.add(12);arrayList.add(23);arrayList.add(34);//清空arrayList中所有数据arrayList.clear();System.out.println(arrayList);//结果为[]} boolean contains(Object o);//判断o是否在线性表中 public static void main(String[] args) {ArrayListString arrayList new ArrayList();arrayList.add(hello );arrayList.add(world );arrayList.add(coming);//判断是否存在oSystem.out.println(arrayList.contains(come));System.out.println(arrayList.contains(coming));System.out.println(arrayList);//结果为[hello, world , coming]} int indexOf(Object o);//返回第一个o所在下标int lastIndexOf(Object o);//返回最后一个o的下标 public static void main(String[] args) {ArrayListString arrayList new ArrayList();arrayList.add(hello );arrayList.add(world );arrayList.add(coming);arrayList.add(hello );//返回下标System.out.println(arrayList.indexOf(hello ));//返回第一次遇到o的下标System.out.println(arrayList.lastIndexOf(hello ));//返回最后一个遇到o的下标System.out.println(arrayList);//结果为[hello, world , coming, hello ]} ListE subList(int fromIndex, int toIndex);//截取部分链表从fromIndex到toIndex public static void main(String[] args) {ArrayListString arrayList new ArrayList();arrayList.add(hello );arrayList.add(world );arrayList.add(coming);arrayList.add(hello );//ListString arrayList1 arrayList.subList(1,2);//截取从1到2的下标且满足左闭右开System.out.println(arrayList1);//结果是[world ]} 以上就是ArrayList中常见的方法我们可以通过ArrayList中的方法实现一些算法下一节讲这些算法嗷~
http://www.hkea.cn/news/14306630/

相关文章:

  • 快速排名网站海南网站建设推广公司哪家好
  • flash型网站国外 网站开发框架
  • 深圳最好的网站开发公司创意设计与制作作品
  • 制作简单的个人网站网站海外推广
  • 建设银行的官方网站纪念币正规的网店培训机构有哪些
  • 德州做网站的公司企业咨询公司收费标准
  • 专业手机网站建设公司简约智能设备制造公司网站
  • 深圳精品网站制作大型网站开发视频百度云
  • 邯郸学校网站建设报价网站怎样做平面设计图
  • 免费网站制作软件教程
  • 制作外贸网站开发asp网站应用程序
  • 自适应网站做百度推广网站开发费用预算
  • 手机网站模板 餐饮杭州科技公司网站建设
  • 网站建设 连云港洛阳网约车
  • 如何查网站建设者ipwordpress 手动安装
  • 手机网站的价值求网站建设网站优化工作
  • 电商网站开发平台哪家好网站备案几天
  • 如何选择营销网站建设做移动端网站
  • 潍坊做网站建设东莞网站排名优化价格
  • 北京商城网站开发公司ssh架构jsp网站开发
  • 网站建设开发全包小程序开发 杭州
  • 免费html5网站源码网上推广怎么收费
  • 开发网站报价方案网站开发项目总结模板
  • 厦门网站建设培训费用宿州做网站
  • 网站首页设计报价多少几个做ppt的网站知乎
  • 小兔自助建站高校网站建设的意义
  • 国外比较有名的设计工作室网站asp.net做购物网站
  • 区块链技术做网站网站设计画布规范1680
  • 网站推广填空题让医院做网站的策划书
  • 国内wordpress主题网站公司建设内容是什么