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

南通网站建设心得网站开发行业竞争大吗

南通网站建设心得,网站开发行业竞争大吗,网站运营每天做啥工作,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.tj-hxxt.cn/news/228980.html

相关文章:

  • 外贸推广网站邮箱收费北京网页设计机构
  • 宠物发布网站模板射阳建设网站哪家好
  • 网站开发语言怎么样网站微信支付怎么做
  • 大连网页建站模板江苏省住房和城乡建设部网站
  • 网站分布想学动漫设计报什么专业
  • 网站开发者模式怎么保存dedecms 迁移 wordpress
  • 搭建一个视频网站多少钱东莞整合网站建设公司
  • 网站建设做的好极端页面 装修wordpress 主题
  • 做网站做的好的公司线上推广软件
  • 精品网站建设费用网站排名的优化
  • 怎么做加密网站代做原创毕业设计网站
  • 深圳深圳建设网站wordpress怎么链接到文件夹
  • 成都建设网站 scgckj滨海建设局官方网站
  • 猪八戒建站服务优化英语
  • 做阿里网站卖东西赚钱哈尔滨网站建设网站开发
  • 网址推荐你会感谢我的关于公司网络优化方案
  • 博物馆网站 微信 微博 建设方案考试资料网
  • 济南哪个网络公司建网站好网站推广策划方案3000字
  • 蓝田县建设局网站网站开发如何使用API
  • 网站制作与免费网站建设南京百度
  • 织梦制作手机网站模板免费下载湛江在线网
  • 网站建设费用计算联想用来网站开发笔记本
  • 专业建站公司提供详细的功能描述及报价seo搜索排名优化方法
  • 潍坊免费做网站微信兼职网站开发
  • 怎么免费上传网页网站公司网站建设策划
  • 陕西企业营销型网站免费的ui设计的网站
  • 如何由网页生成网站wordpress uehtml
  • 金融企业网站制作学校网站建设情况报告
  • 乔拓云建站平台没有公司可以注册网站吗
  • 网站建设推广工资货代网站制作