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

自己搭建个人网站的注意事项传媒广告公司名称

自己搭建个人网站的注意事项,传媒广告公司名称,室内设计联盟app下载,网站开发技术规范⭐ 作者#xff1a;小胡_不糊涂 #x1f331; 作者主页#xff1a;小胡_不糊涂的个人主页 #x1f4c0; 收录专栏#xff1a;浅谈Java #x1f496; 持续更文#xff0c;关注博主少走弯路#xff0c;谢谢大家支持 #x1f496; 线性表与顺序表 1. 线性表2. 顺序表2.1 … ⭐ 作者小胡_不糊涂 作者主页小胡_不糊涂的个人主页 收录专栏浅谈Java 持续更文关注博主少走弯路谢谢大家支持 线性表与顺序表 1. 线性表2. 顺序表2.1 接口的实现 3. ArrayList简介4. ArrayList使用4.1 ArrayList构造4.2 ArrayList常见操作4.3 ArrayList的遍历 1. 线性表 线性表linear list 是n个具有相同特性的数据元素的有限序列。 它是一种在实际中广泛使用的数据结构常见的线性表顺序表、链表、栈、队列… 线性表在逻辑上是线性结构也就说是连续的一条直线。但是在物理结构上并不一定是连续的线性表在物理上存储时通常以数组和链式结构的形式存储。 2. 顺序表 顺序表 是用一段物理地址连续的存储单元依次存储数据元素的线性结构一般情况下采用数组存储。在数组上完成数据的增删查改。 2.1 接口的实现 实现顺序表的插入、删除、修改、查找工作 import java.util.Arrays; public class MyArrayList {public int[] elem ;//定义一个数组public int usedSize;//0用来记录元素个数//顺序表的 默认大小public static final int DEFAULT_SIZE 10;public MyArrayList() {this.elem new int[DEFAULT_SIZE];}public MyArrayList(int capacity) {this.elem new int[capacity];}//顺序表尾部插入元素public void add(int data) {checkCapacity();this.elem[this.usedSize] data;this.usedSize;}//判断顺序表是否为空public boolean isFull() {/*if(usedSize elem.length) {return true;}return false;*/return usedSize elem.length;}//指定pos位置添加元素datapublic void add(int pos, int data) {try {checkPosOnAdd(pos);}catch (PosIllegality e) {e.printStackTrace();}checkCapacity();//1、从最后一个有效的数据开始往后移动 //2、当i pos 就结束for (int i usedSize-1; i pos; i--) {elem[i1] elem[i];}//3、存放元素到pos 位置elem[pos] data;//4、usedSize;usedSize;}//检查插入位置pos的合法性private void checkPosOnAdd(int pos) throws PosIllegality{if(pos 0 || pos usedSize) {System.out.println(不符合法);throw new PosIllegality(插入元素下标异常: pos);}}private void checkCapacity() {if(isFull()) {//扩容elem Arrays.copyOf(elem,elem.length*2);}}//判定是否包含某一元素public boolean contains(int toFind) {if(isEmpty()) {return false;}for (int i 0; i usedSize; i) {//如果是查找引用数据类型 一定记住 重写方法if(elem[i] toFind) {return true;}}return false;}//判断线性表是否为空public boolean isEmpty() {return usedSize 0;}//查找某个元素对应位置public int indexOf(int toFind) {if(isEmpty()) {return -1;}for (int i 0; i usedSize; i) {//如果是查找引用数据类型 一定记住 重写方法if(elem[i] toFind) {return i;}}return -1;}//获取pos位置元素public int get(int pos) throws MyArrayListEmpty{checkPosOnGetAndSet(pos);if(isEmpty()) {throw new MyArrayListEmpty(获取指定下标元素时 顺序表为空);}return elem[pos];}private void checkPosOnGetAndSet(int pos) throws PosIllegality{if(pos 0 || pos usedSize) {System.out.println(不符合法);throw new PosIllegality(获取指定下标的元素异常: pos);}}//给pos位置设为元素valuepublic void set(int pos, int value) {checkPosOnGetAndSet(pos);elem[pos] value;}//删除第一次出现的这个数字public void remove(int toRemove) {int index indexOf(toRemove);//获取元素下标if(index -1) {System.out.println(没有这个数字);return;}for(int i index; i usedSize-1;i) {elem[i] elem[i1];}usedSize--;}//获取顺序表长度public int size() {return this.usedSize;}//清空顺序表public void clear() {this.usedSize 0;}//打印顺序表中元素public void display() {for (int i 0; i this.usedSize; i) {System.out.print(this.elem[i] );}System.out.println();}}测试类 public class TestMAL{public static void main(String[] arg) {MyArrayList arr new MyArrayList();arr.add(1);arr.add(2);arr.add(3);arr.add(4);arr.add(5);arr.display();System.out.println(-------);arr.add(1);arr.display();System.out.println(-------);arr.add(6,2);arr.display();System.out.println(-------);System.out.println(arr.indexOf(3));arr.display();System.out.println(-------);arr.get(9);} }3. ArrayList简介 在集合框架中ArrayList是一个普通的类实现了List接口具体框架图如下 【说明】 ArrayList是以泛型方式实现的使用时必须要先实例化ArrayList实现了RandomAccess接口表明ArrayList支持随机访问ArrayList实现了Cloneable接口表明ArrayList是可以clone的ArrayList实现了Serializable接口表明ArrayList是支持序列化的和Vector不同ArrayList不是线程安全的在单线程下可以使用在多线程中可以选择Vector或者CopyOnWriteArrayListArrayList底层是一段连续的空间并且可以动态扩容是一个动态类型的顺序表 4. ArrayList使用 4.1 ArrayList构造 方法解释ArrayList()无参构造ArrayList(Collection? extends E c)利用其他 Collection 构建 ArrayListArrayList(int initialCapacity)指定顺序表初始容量 ArrayList的创建 public static void main(String[] arg){// ArrayList创建推荐写法// 构造一个空的列表ListInteger list1 new ArrayList();// 构造一个具有10个容量的列表ListInteger list2 new ArrayList(10);list2.add(1);list2.add(2);list2.add(3);// list2.add(hello); // 编译失败ListInteger已经限定了list2中只能存储整形元素// list3构造好之后与list中的元素一致ArrayListInteger list3 new ArrayList(list2);// 避免省略类型否则任意类型的元素都可以存放使用时将是一场灾难List list4 new ArrayList();list4.add(111);list4.add(100);System.out.println(list4);//[111,100]}4.2 ArrayList常见操作 方法解释boolean add(E e)尾插 evoid add(int index, E element)将 e 插入到 index 位置boolean addAll(Collection? extends E c)尾插 c 中的元素E remove(int index)删除 index 位置元素boolean remove(Object o)删除遇到的第一个 oE get(int index)获取下标 index 位置元素E set(int index, E element)将下标 index 位置元素设置为 elementvoid clear()清空boolean contains(Object o)判断 o 是否在线性表中int indexOf(Object o)返回第一个 o 所在下标int lastIndexOf(Object o)返回最后一个 o 的下标List subList(int fromIndex, int toIndex)截取部分 list ArrayList操作方法的使用 public static void main(String[] args) {ListString list new ArrayList();list.add(JavaSE);list.add(JavaWeb);list.add(JavaEE);list.add(JVM);list.add(测试课程);System.out.println(list); // 获取list中有效元素个数System.out.println(list.size()); // 获取和设置index位置上的元素注意index必须介于[0, size)间System.out.println(list.get(1));list.set(1, JavaWEB);System.out.println(list.get(1)); // 在list的index位置插入指定元素index及后续的元素统一往后搬移一个位置list.add(1, Java数据结构);System.out.println(list); // 删除指定元素找到了就删除该元素之后的元素统一往前搬移一个位置list.remove(JVM);System.out.println(list); // 删除list中index位置上的元素注意index不要超过list中有效元素个数,否则会抛出下标越界异常list.remove(list.size()-1);System.out.println(list);// 检测list中是否包含指定元素包含返回true否则返回falseif(list.contains(测试课程)){list.add(测试课程);} // 查找指定元素第一次出现的位置indexOf从前往后找lastIndexOf从后往前找list.add(JavaSE);System.out.println(list.indexOf(JavaSE));System.out.println(list.lastIndexOf(JavaSE)); // 使用list中[0, 4)之间的元素构成一个新的SubList返回,但是和ArrayList共用一个elementData数组ListString ret list.subList(0, 4);System.out.println(ret);list.clear();System.out.println(list.size());}4.3 ArrayList的遍历 ArrayList 可以使用三方方式遍历for循环下标、foreach、使用迭代器 public static void main(String[] args) {ListInteger list new ArrayList();list.add(1);list.add(2);list.add(3);list.add(4);list.add(5);// 使用下标for遍历for (int i 0; i list.size(); i) {System.out.print(list.get(i) );}System.out.println();// 借助foreach遍历for (Integer integer : list) {System.out.print(integer );}System.out.println();//使用迭代器IteratorInteger it list.listIterator();while(it.hasNext()){System.out.print(it.next() );}System.out.println();}
http://www.hkea.cn/news/14563995/

相关文章:

  • 公司网站设计有基本哪些要求农业企业网站建设
  • 哈尔滨企业网站开发报价北仑营销型网站制作
  • 网站建设设计有限公司建站用帝国还是wordpress
  • 网站建设硬件配置北京开发小程序
  • 石家庄做网站百度推广小程序开发教程视频 推荐
  • 湖南省网站建设计算机专业网页制作
  • 沈阳网站关键词优化服务好有很多长尾怎么做网站内容
  • 注册网站域名要钱吗公司网站设
  • 建设网站的 成本视频网站模板源码
  • 互联网网站样式茂名seo站内优化
  • 搜索大全引擎入口网站外贸建站wordpress主题
  • 福州做网站的哪家好学生ppt模板免费下载 素材
  • 自己制作网站该怎么做html5手机网站教程
  • 做本地地旅游网站做亚马逊运营要看哪些网站
  • 58同城网站建设深圳丽丽亚新纪实网站建设
  • 长春专业做网站的公司有哪些长春企业公司网站建设
  • 企业网站建设费怎么账务处理大连网站专业制作
  • 网站开发布局wordpress 自定义产品页面
  • 做类图的网站51zwd一起做网站
  • 樟树有哪几个网站做爆药库注册了域名怎么做网站
  • 学习制作网页的网站移动端布局
  • 如何做彩票网站网站翻新后seo怎么做
  • 有关做聚合物电池公司的网站餐饮管理系统设计
  • 济南手机网站建设电话适合html初学者做的网站
  • 重庆福彩建站网站上文章加入音乐是怎么做的
  • 网站改版 被百度k徐州市建设局网站电话号码
  • 公众号网站开发整合营销方案怎么写
  • 网站备案核验系统wordpress显示空白
  • 李氏牛仔网站建设风格广州做公司网站
  • 东莞哪里有做企业网站的网站建设的软件