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

网站建设教程实训心得企业培训课程分类

网站建设教程实训心得,企业培训课程分类,wordpress建站 图片,wordpress证优客一、基本概念 1. 存放一组相同数据类型的集合 2.在内存中,分配连续的空间,数组创建时要指定大小 3. 定义 数据类型 [] 数组名 // 1.定义一个数组,里面的元素包含10, 20, 24, 17, 35, 58, 45, 74 int arr[] {10, 20, 24, 17, 35, 58, 45, 74}; 4. 获取数组的长度 int lengt…一、基本概念 1. 存放一组相同数据类型的集合 2.在内存中,分配连续的空间,数组创建时要指定大小 3. 定义    数据类型 [] 数组名 // 1.定义一个数组,里面的元素包含10, 20, 24, 17, 35, 58, 45, 74 int arr[] {10, 20, 24, 17, 35, 58, 45, 74}; 4. 获取数组的长度 int length arr.length; 5.获取数组中指定位置的元素 int number arr[1];// 第2个位置的值 6.修改数组中指定位置的元素 arr[2] 100;// 将第三位的数字改为100 7.数组排序 Arrays.sort(arr); 8.遍历数组 for (int i 0; i arr.length; i) {System.out.println(arr[i]); } 9.索引从0开始,最大为数组长度-1 10.访问数组中元素需要通过索引 11.常见的错误:NULLPointException(空指针异常) ArrayIndexOutofBoundsException(数组索引越界) System.out.println(arr[length]);// ArrayIndexOutofBoundsException(数组索引越界) 12.常见的数组:字符串,对象数组,哈希表  二、Java数组的特点 1数组在内存中连续分配 2创建数组时要指明数组的大小 3如何访问数组,通过索引,索引从0开始,到数组的长度-1 4使用索引 获取指定索引位置的值 arr[index] 修改指定索引位置的值 arr[index] 值 删除数组中元素(假删除----空间未被删除) 数组的遍历:将数组中的元素一一打印出来 数组最大的优点:快速查询 三、数组的基本操作  构造函数 public MyArray(int capacity) {// 判断容量if (capacity 0) {this.capacity 10;} else {this.capacity capacity;}this.size 0;this.data (T[]) (new Object[this.capacity]);// 为泛型数组赋值 } 获取数组中实际存放元素的个数 public int getSize() {return this.size; } 获取数组的容积  public int getCapacity() {return this.capacity; } 判断数组是否为空 public boolean isEmpty() {return this.size 0; } 向数组中添加元素 public void add(T item) {// this.size 指向的是待插入元素的位置addIndex(this.size, item); } ​ 向数组中添加元素(头部) public void addHead(T item) {addIndex(0, item); } 根据索引修改值 public void setValByIndex(int index, T val) {// 判断索引范围 不符合抛出异常if (index 0 || index this.size) {throw new IllegalArgumentException(index is invalid);}this.data[index] val; } 扩容resize(自定义扩容函数) private void resize(int newCapacity) {System.out.println(resize: newCapacity);// 打印数组的新容量T[] newData (T[]) (new Object[newCapacity]);// 创建一个新的泛型数组并赋值// 将原数组中元素加到新数组for (int i 0; i this.size; i) {newData[i] this.data[i];}// 改变容量与容积this.data Arrays.copyOf(newData, newCapacity);this.capacity newCapacity; } 向数组中在指定位置添加元素 public void addIndex(int index, T val) {// 判断索引范围 不符合抛出异常if (index 0 || index this.size) {throw new IllegalArgumentException(index is invalid);}//判断数组是否满if (this.size this.capacity) {// 扩容   resize 容积扩一倍capacity * 2;System.out.println(resize: capacity);// 打印数组的新容量this.data Arrays.copyOf(data, capacity * 2);// 使用数组复制函数//resize(this.capacity * 2);// 使用自定义函数}//从index位置开始,元素需要进行后移for (int i this.size - 1; i index; i--) {this.data[i 1] this.data[i];}// 向指定位置添加元素this.data[index] val;//更新this.sizethis.size; } ​ 修改指定位置的值 public void modifyValueByIndex(int index, T value) {// 入参判断--对输入的参数进行判断   参数有误抛异常(index is invlid.)if (index 0 || index this.capacity) {throw new IllegalArgumentException(index is invlid.);}this.data[index] value;// 修改指定位置的值 } 获取指定索引位置的值 public T getValueByIndex(int index) {// 入参判断--对输入的参数进行判断   参数有误抛异常(index is invlid.)if (index 0 || index this.capacity) {throw new IllegalArgumentException(index is invlid.);}return this.data[index];// 返回指定索引的值 } ​ 查询指定的值在数组是否存在 public int containsValue(T val) { // 遍历数组   返回对应索引 使用比较函数 如存在,获取索引,否则返回-1for (int i 0; i this.size; i) {if (val.equals(this.data[i])) {return i;}}return -1; } 根据索引删除从数组中删除元素 public T removeByIndex(int index) {// 入参判断--对输入的参数进行判断   参数有误抛异常(index is invlid.)if (index 0 || index this.size) {throw new IllegalArgumentException(index is invlid.);} ​// 删除操作的核心/*** 1.找到删除的位置* 2.删除位置之后的元素要前移 arr[j-1] arr[j]*/T delValue this.data[index];// 获取要删除索引的值for (int i index 1; i this.size; i) {this.data[i - 1] this.data[i];}// 更新数组索引this.size--;// 判断是否缩容if (this.size this.capacity / 4 this.capacity / 2 0) {capacity / 2;this.data Arrays.copyOf(data, capacity);//resize(this.capacity / 2);// 使用自己编写的缩容函数}return delValue;// 返回删除的值 } 重写toString---ctrlO Override public String toString() {// [1,2,3,4,5]StringBuilder sb new StringBuilder([);// 遍历将数据逐个拼接   中间用逗号隔开for (int i 0; i this.size; i) {sb.append(this.data[i]);if (i ! this.size - 1) {sb.append(,);}}sb.append(]);return sb.toString();// 返回字符串 } 将一个数组转换为字符串 // 将一个数组转换成字符串 int[] res {1, 2, 3, 4, 5}; // 方式1 String temp Arrays.toString(res); System.out.println(temp);// [1, 2, 3, 4, 5] // 方式2 temp Arrays.stream(res).boxed().map(Objects::toString).collect(Collectors.joining()); System.out.printf(temp);// 12345 向原数组中继续添加一个元素,就会越界(解决办法:扩容)只能处理int类型,如何处理多种类型---(解决方法:使用泛型)删除元素后,空间利用率低(解决方法:减少容量)
http://www.hkea.cn/news/14407000/

相关文章:

  • 网站访问速度优化工具自学网官网
  • 橙色可以做哪些网站评网网站建设
  • 祈网网站建设wordpress翻译公司网站
  • 怎么做网站登录站装修公司的网站怎么做
  • 电子商务网站建设的目标是什么意思wordpress 标签云 插件
  • 深圳做网站 信科便宜网站数据库出问题
  • 手机微信可以做网站吗php购物网站开发设计
  • 南阳网站营销外包公司关键词搜索名词解释
  • 自己做网站 发布视频铁岭做网站信息
  • 在哪查网站备案中国域名的管理机构是
  • 建手机网站价格thinkphp与wordpress
  • 北仑网站建设成都 直播 网站建设
  • 免费的个人空间建网站小程序建站哪家好
  • 建一个网站的手机电脑南宁网站建设产品介绍
  • 深圳网站推广网站运营解决方案
  • 开一个素材设计网站怎么做视频制作软件免费版
  • 宁津华企动力做网站的电话多少北京网站备案代理
  • wordpress注册邮件问题搜索引擎排名优化价格
  • 广东专业网站定制高端旅游网站制作
  • 建设工程信息服务平台新网站家乡网站建设策划案
  • 注册网站流程镜像网站怎么做排名
  • 做设计太依赖网站素材中国建设银行安徽省 招聘信息网站
  • php网站开发设计系统网页制作设计框架
  • 做网站设计的论文中摘要怎么写wordpress 放弃react
  • 阿里云备案成功怎么建设网站明月wordpress
  • 中国常用网站网址网站怎么做身份验证
  • 天津建设培训中心网站回老家做PHP网站
  • 菏泽哪家网站设计公司好福州seo公司
  • 网站设计公司费用wordpress视频背景
  • 高大上 网站上海青浦做网站