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

外贸网站建设seo自己做的简单网站下载

外贸网站建设seo,自己做的简单网站下载,阿里云外贸建站,通过骗子网站能找到其服务器吗目录 1、入栈 2、出栈 3、获取栈顶的元素 4、从栈中查找元素 栈是一种常见的数据结构#xff0c;栈的特点是后进先出#xff0c;就像我们叠盘子#xff0c;拿走上面的盘子才能拿到下一个。java中的栈java.util.Stack是通过java.util.Vector实现的#xff0c;所以底层都…目录 1、入栈 2、出栈 3、获取栈顶的元素 4、从栈中查找元素 栈是一种常见的数据结构栈的特点是后进先出就像我们叠盘子拿走上面的盘子才能拿到下一个。java中的栈java.util.Stack是通过java.util.Vector实现的所以底层都是数组并且是线程安全的。 接下来我们通过数组来实现一个简单的栈 首先栈Stack中应该有以下几个方法 - 入栈压栈push() - 出栈pop() - 取栈顶元素peek() - 从栈中查找某个元素search() 首先我们先描绘一下栈的基本结构使用一个数组保存栈中所有对象还要保存数组的长度。 package stack;import java.util.Arrays;/*** author heyunlin* version 1.0*/ public class StackE {private E[] data;private int length;public Stack() {}public boolean isEmpty() {return data null || data.length 0;}Overridepublic String toString() {return Arrays.toString(data);}} 1、入栈 入栈就是把元素放到栈中然后要让栈的长度1初始时栈为空需要实例化。 但是这个过程中遇到一点问题因为栈的元素类型E需要运行时才能确定不能直接通过new E[]的方式实例化。这时候想到所有自定义的类都默认继承自我们的顶级超类java.lang.Object那就可以创建一个Object类型的空数组再强转成E[]类型这样就相当于创建了一个E类型的空数组。实现的代码如下 public synchronized E push(E e) {if (isEmpty()) {Object[] array new Object[1];data (E[]) array;data[0] e;length 1;} else {length ;// 数组扩容data Arrays.copyOf(data, length);// 把元素放到数组最后一个下标的位置data[length - 1] e;}return data[length - 1]; } 2、出栈 出栈就是删除并返回栈顶的元素 这个比较简单直接贴上代码 public synchronized E pop() {if (isEmpty()) {throw new RuntimeException(出栈失败当前栈为空~);}// 取栈顶元素E top data[length - 1];length --;// 数组长度减1data Arrays.copyOf(data, length);return top; } 3、获取栈顶的元素 这个方法最简单直接获取数组中最后一个元素就行了 public E peek() {if (isEmpty()) {throw new RuntimeException(获取栈顶元素失败当前栈为空~);}return data[length - 1]; } 4、从栈中查找元素的位置 使用该方法前请确保E.java中重写了equals()方法 public int search(E target) {int index -1;for (int i 0; i data.length; i) {if (data[i] target) {index i;}}return index; } 最后贴上完整的代码 package stack;import java.util.Arrays;/*** author heyunlin* version 1.0*/ public class StackE {private E[] data;private int length;public Stack() {}/*** 入栈/压栈* param e E* return E*/public synchronized E push(E e) {if (isEmpty()) {Object[] array new Object[1];data (E[]) array;data[0] e;length 1;} else {length;// 数组扩容data Arrays.copyOf(data, length);// 把元素放到数组最后一个下标的位置data[length - 1] e;}return data[length - 1];}/*** 出栈* return E*/public synchronized E pop() {E top peek();length --;data Arrays.copyOf(data, length);return top;}/*** 取栈顶元素* return E*/public E peek() {if (isEmpty()) {throw new RuntimeException(获取栈顶元素失败当前栈为空~);}return data[length - 1];}public boolean isEmpty() {return data null || data.length 0;}/*** 查找对象在栈中的位置* param target E* return int*/public int search(E target) {int index -1;for (int i 0; i data.length; i) {E element data[i];if (target null element null || element.equals(target)) {index i;}}return index;}Overridepublic String toString() {return Arrays.toString(data);}} 最后我们新建一个demo来测试一下刚刚写的Stack package stack;/*** author heyunlin* version 1.0*/ public class StackExample {public static void main(String[] args) {StackString stack new Stack();stack.push(a);stack.push(b);stack.push(c);stack.push(d);stack.push(e);System.out.println(stack.push(f));System.out.println(stack);String pop stack.pop();System.out.println(pop);System.out.println(stack);}} 好了如果本篇文章对你有所帮助不要忘了点赞、收藏哦~
http://www.hkea.cn/news/14406778/

相关文章:

  • 网站盈利方式怎样做网站导航界面
  • 秦皇岛建设管理中心网站wordpress windows部署
  • 北京摇号网站维护网站建设入的什么科目
  • 个体工商户经营范围网站开发泰州网络营销
  • 罗岗网站建设公司mvc3网站上传到空间
  • 网站后台更新内容后溧阳企业网站建设
  • 网站做配置文件的作用黑龙江建设工程网
  • 企查查企业信息查询网站网站开发属于IT行业
  • 济宁网站建设个人网站建立教程
  • 做铝板的网站客户求购平台
  • 电商网站开发人员结构淘宝网站建设的主要工作
  • 上海雍熙网站建设net手机网站开发
  • wordpress 禁用手机怎么做seo信息优化
  • 用html网站登录界面怎么做潍坊网站建设公司有哪些内容
  • 口碑好的盐城网站建设网站开发设计方案书
  • 制造动漫网站开发目的淘宝网站怎么做的好看
  • 做网站的开发环境百度 官网
  • 电脑网站模版iis网站ip
  • 做设计 素材网站有哪燕郊医疗网站建设
  • 临平做网站电话重庆专业网站设计服务
  • 网站建设及服务合同整站优化昌吉可以吗?
  • 长沙做网站seo优化外包北京网聘信息技术有限公司
  • 电商网站建设那家好做网站带来好处
  • 网站ip和pv企业如何做网站建站
  • 通过ip访问网站需要怎么做wordpress 标签表
  • 软文写作方法wordpress教程seo
  • 网站兼容性代码柳市网站设计推广
  • 网站开发 网页设计北京师范大学出版社杭州亿向建设有限公司 网站
  • 做网站是通过怎么挣钱WordPress登录不进
  • 做编程的+网站有哪些内容做摄影网站的目的