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

福永镇网站建设excel如何做超链接网站

福永镇网站建设,excel如何做超链接网站,大前端d8扁平化wordpress模板,一个虚拟主机做2个网站零、 关闭IDEA调试时自动隐藏空元素 一、 集合的概念 存储一个班学员信息,假定一个班容纳20名学员 当我们需要保存一组一样(类型相同)的元素的时候,我们应该使用一个容器来存储,数组就是这样一个容器。 数组有什么缺…

零、 关闭IDEA调试时自动隐藏空元素


一、 集合的概念


存储一个班学员信息,假定一个班容纳20名学员

        当我们需要保存一组一样(类型相同)的元素的时候,我们应该使用一个容器来存储,数组就是这样一个容器。

数组有什么缺点?

        数组一旦定义,长度将不能再变化。然而在我们的开发实践中,经常需要保存一些变长的数据集合,于是,我们需要一些能够动态增长长度的容器来保存我们的数据。

而我们需要对数据的保存的逻辑可能各种各样,于是就有了各种各样的数据结构。Java中对于各种数据结构的实现,就是我们用到的集合。

集合和数组既然都是容器,它们的区别:

        数组的长度是固定的。集合的长度是可变的。

        数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储。

二、 集合 API


集合体系概述

        Java的集合框架是由很多接口、抽象类、具体类组成的,都位于java.util包中。

单列集合:一次放进去一个值(对象)

双列集合:键值

三、 Collection 接口


Collection 接口:定义了存取一组对象的方法,其子接口 Set 和 List 分别定义了存储方式:

        ● Set 中的数据对象不可以重复。

        ● List 中的数据对象有顺序(添加顺序)且可以重复。

四、 List 接口及实现类


  List 的实现类

List继承了Collection接口,有三个实现的类

ArrayList :数组列表,数据采用数组方式存储。

LinkedList :链表

Vector :数组列表,添加同步锁,线程安全的

  ArrayList

        • ArrayList 实现

        ArrayList实现了长度可变的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高

        • ArrayList 常用方法

add(E element)   //在数组尾部添加

add(int index , E element)  //在索引处添加

get(int index)   //获得索引处的值

indexOf(Object o)    //返回指定字符在此字符串中第一次一次出现处的索引

lastIndexOf(Object o)    //返回指定字符在此字符串中最后一次出现处的索引

remove(int index)   // 删除并返回指定位置元素

set(int index, E element)    //用于替换动态数组中指定索引的元素

import java.util.ArrayList;
import java.util.Arrays;public class ArrayListDemo1 {public static void main(String[] args) {ArrayList arrayList = new ArrayList();//添加元素(数组尾部)arrayList.add("a");arrayList.add(1);arrayList.add('b');arrayList.add("a");arrayList.add(true);System.out.println(arrayList);//在指定索引处添加元素,其他依次后移arrayList.add(1,"new");System.out.println(arrayList);//获得索引处的元素System.out.println("arrayList.get(1) = "+arrayList.get(1));//返回指定字符在此字符串中第一次出现处的索引System.out.println(arrayList.indexOf("a"));  //0//返回指定字符在此字符串中最后一次出现处的索引System.out.println(arrayList.lastIndexOf("a"));  //4//删除元素(单次)arrayList.remove("a");   //通过直接输入删除的值来删arrayList.remove(1);   //通过索引来删除System.out.println(arrayList);arrayList.remove("1");  //数字只能通过索引来删除System.out.println(arrayList);arrayList.remove("b");  //遇到重复相同的字符串,只会删除第一个System.out.println(arrayList);//删除元素(指定索引处),其后的依次前移arrayList.remove(1);System.out.println(arrayList);//替换元素(不考虑元素类型)arrayList.set( 1,"newNew");System.out.println(arrayList);//清空元素arrayList.clear();System.out.println(arrayList);//判断是否为空System.out.println(arrayList.isEmpty()); //true }
}

         • 易错处

由于ArrayList可以存储任何类型的对象,而遍历时,会默认为Object类型,要使用子类的还要涉及向下转型,既麻烦又不可取。因而Java引入一种泛型( <E> ),用来限制可以输入的对象类型

public class ArrayList<E> extends AbstractList<E>

import java.util.ArrayList;public class ArrayListDemo3 {public static void main(String[] args) {/*集合容器中默认可以添加Object类型*///但是不建议,毕竟好进去不好出来//因而我们使用 <>泛型 来限定输入的类型ArrayList<String> arrayList = new ArrayList();arrayList.add("a");//arrayList.add(1); //报错}
}

  LinkedList

        • LinkedList 实现

LinkedList采用链表存储方式。插入、删除元素时效率比较高

        • LinkedList 常用方法

add(int index , Object element)        //添加

addFirist(Object element)        //头添加

addLast(Object element)        //尾添加

get(int index)        //获得索引元素

removeFirst()       // 返回头元素

removeLast()        //返回尾元素

remove(int index)  //删除并返回索引的元素

getFirst()   //获得头元素

getLast()   //获得尾元素

import java.util.LinkedList;public class LinkListDemo1 {public static void main(String[] args) {LinkedList<String> linkedList = new LinkedList<>();linkedList.add("a");linkedList.add("b");linkedList.add("c");System.out.println(linkedList);linkedList.add(1,"dd"); //向指定位置插入System.out.println(linkedList);//获取指定位置上的元素System.out.println(linkedList.get(1));//删除并返回是否删除成功System.out.println(linkedList.remove("a")); System.out.println(linkedList);System.out.println(linkedList.pop()); //从这个列表表示的堆栈中弹出一个元素。弹出意味着移除并返回这个列表的第一个元素。}
}

  Vector 

 Vector 数组列表,添加同步锁,它是线程安全的

import java.util.Vector;
/*
数组列表,线程安全的*/
public class VectorDemo {public static void main(String[] args) {Vector<String> vector = new Vector<>();vector.add("a");vector.add("b");vector.add("c");}
}

五、 List接口集合迭代


  for循环遍历

import java.util.ArrayList;
import java.util.Arrays;public class ListTraverse {public static void main(String[] args) {ArrayList<String> arrayList = new ArrayList<>();arrayList.add("a");arrayList.add("b");arrayList.add("c");/*通过for循环遍历*/for(int i = 0;i<arrayList.size();i++){System.out.println(arrayList.get(i));}System.out.println();//for循环时可以修改元素for(int i = 0;i<arrayList.size();i++){if("a".equals(arrayList.get(i))){arrayList.remove(i);}System.out.println(arrayList.get(i));}System.out.println();}
}

  增强for循环的遍历

import java.util.ArrayList;
import java.util.Arrays;public class ListTraverse {public static void main(String[] args) {ArrayList<String> arrayList1 = new ArrayList<>();arrayList1.add("a");arrayList1.add("b");arrayList1.add("c");/*通过增强for循环遍历*/for(String s:arrayList1){System.out.println(s);}System.out.println();//增强for循环时不允许修改元素for(String s:arrayList1){if(s.equals("a")){arrayList1.remove(s);}System.out.println(s);}}
}

        注:增强for循环遍历元素时,不允许修改元素(增添或删除)

  迭代器遍历(Iterator)

import java.util.ArrayList;
import java.util.Iterator;public class ListTraverse1 {public static void main(String[] args) {ArrayList<String> arrayList = new ArrayList<>();arrayList.add("a");arrayList.add("b");arrayList.add("c");/*使用迭代器遍历*///获得集合对象的迭代器对象Iterator<String> it = arrayList.iterator();while (it.hasNext()){String s = it.next();//获取到下一个元素System.out.println(s);}ArrayList<String> arrayList1 = new ArrayList<>();arrayList1.add("a");arrayList1.add("b");arrayList1.add("c");Iterator<String> its = arrayList1.iterator();while (its.hasNext()){String s = its.next();//获取到下一个元素if(s.equals("a")){its.remove(); //使用迭代器对象删除元素}System.out.println(s);}}
}

http://www.yayakq.cn/news/888216/

相关文章:

  • 南通有哪些网站一个外贸网站要多大的空间比较好
  • 十堰网站整站优化公司响应式的网站做优化好吗
  • 免费制作微信小程序的网站企业名称
  • 网站标题设计深圳南山住房和建设局网站官网
  • 地方门户信息网站建设方案泉州网站页面设计公司
  • 网站程序安全管理没有网站也可以做cpa
  • 哪个网站做h5比较好网站建设算无形资产
  • 小网站如何做密码找回网站报名照片怎么做
  • 大型网站建设的必须条件wordpress 域帐户
  • 电话销售做网站的术语重庆沙坪坝地震
  • 石材网站模板微信小程序登录平台
  • 企业做网站的好处是什么过年做哪些网站致富
  • 厦门做网站公司排名网站在线订单系统怎么做
  • 农村小学校园网站建设方案免费咨询律师平台
  • 建设e购物网站生活服务网站开发
  • 怎么建设外贸网站为什么登录不上wordpress
  • 网站欣赏公司网站案例网站主机查询
  • 怎样做汽车网站建设如何修改wordpress站
  • 网站开发老板排名东阳自适应网站建设
  • 广州网站建设推荐q479185700霸屏选择网站的关键词
  • 镇江市住房城乡建设局网站山西太原网站建设
  • php class 做网站php企业网站
  • 手机网站类型网站建设价格评审资料清单
  • 那个网站可以做宣传wordpress简洁企业主题
  • 怎么进入广告联盟看广告赚钱网站权重优化
  • 彩票理财网站建设郴州网站建设企业
  • 专业做微视频的网站做视频网站成本
  • 天津网站建设制作软件东莞公共资源交易中心官网
  • 四川省城乡住房与建设厅网站首页做网站枣庄
  • 设备上哪个网站做外贸推广软件开发模型及特点