//ArrayList已连续的空间进行存储数据
  //LinkedList已链表的结构存储数据
  
  //栈
  MyStark ms=new MyStark();//new 一个实现栈的类
  //压栈
  ms.push("a");
  ms.push("b");
  ms.push("c");
  ms.push("d");
  ms.push("e");
  //取出元素
  for(int i=0;i<5;i++) {
   System.out.println(ms.prop());
  }

//一个实现栈的类

public class MyStark {
 
//使用ArrayList
// ArrayList arr=new ArrayList();
// public void push(Object  object) {
//  arr.add(0, object);
// }
// 
// public Object prop() {
//  //取第一个元素
//  Object o=arr.get(0);
//  arr.remove(0);
//  return o;
//  
// }
 
//使用LinkedList
 LinkedList  arr = new LinkedList();
 public   void  push(Object object) {
  arr.addFirst(object);
  
 }
 
 public  Object prop() {
  Object o=arr.getFirst();
  arr.removeFirst();
  return o;
 }
 
 
 
 

用LinkedList和ArrayList实现自定义栈的异同的更多相关文章

  1. LinkdList和ArrayList异同、实现自定义栈

    //.LinkdList和ArrayList异同 //ArrayList以连续的空间进行存储数据 //LinkedList以链表的结构存储数据 //栈 先进后出 最上面是栈顶元素 arrayLiat自 ...

  2. JAVA堆,栈的区别,用AarrayList、LinkedList自定义栈

    大家都知道java模拟机在运行时要开辟空间所以它有特定的五个内存划分: 1.寄存器:    2.本地方法区:    3.方法区:    4.栈内存:    5.堆内存: 但是我们今天来注重讲一下栈和堆 ...

  3. Java集合系列:-----------06List的总结(LinkedList,ArrayList等使用场景和性能分析)

    现在,我们再回头看看总结一下List.内容包括:第1部分 List概括第2部分 List使用场景第3部分 LinkedList和ArrayList性能差异分析第4部分 Vector和ArrayList ...

  4. java 16 -11 ArrayList存储自定义对象并增强for遍历

    需求:ArrayList存储自定义对象并遍历.要求加入泛型,并用增强for遍历. A:迭代器 B:普通for     C:增强for LinkedList,Vector,Colleciton,List ...

  5. JAVA LinkedList和ArrayList的使用及性能分析

    第1部分 List概括List的框架图List 是一个接口,它继承于Collection的接口.它代表着有序的队列.AbstractList 是一个抽象类,它继承于AbstractCollection ...

  6. 自定义栈Stack 和 队列Queue

    自定义栈 接口 package com.test.custom; public interface IStack<E> { E pop(); void push(E e); E peek( ...

  7. Java ArrayList和Vector、LinkedList与ArrayList、数组(Array)和列表集合(ArrayList)的区别

    ArrayList和Vector的区别ArrayList与Vector主要从二方面来说.  一.同步性:   Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步 ...

  8. LinkedList和ArrayList的区别/何时使用LinkedList和ArrayList

    1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构. 2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList ...

  9. Java基础知识强化之集合框架笔记24:ArrayList存储自定义对象并遍历

    1. ArrayList存储自定义对象并遍历 2. 代码示例: Student.java,如下: package cn.itcast_01; public class Student { privat ...

随机推荐

  1. 本地yum源 、阿里yum源、163yum源的配置安装

    一.本地yum源 (我使用的7.3版本) 1..添加一个新的yum源配置文件dvd.repo(文件名字自定义) vi etc/yum.repos.d     添加新的内容: name=rhel_dvd ...

  2. Python各个岗位的开发流程

     根据张大美女提供资料微修改,在这谢谢张大美女! 1.python软件开发工程师 1.1 项目启动会 说明项目目标.阶段划分.组织结构.管理流程等关键事项. 1.2 需求调研 由用户提出,描述产品的功 ...

  3. java实现rabbitMQ消息收发方式

    定义:消息队列(MQ)是一种应用程序对应用程序的通信方法是AMQP协议. jar包依赖: <!-- 加入mq消息依赖包 -->  <dependency>         &l ...

  4. Springboot+Quartz+MySql整合页面版

    目的: springboot整合Quartz 连接mysql整合出页面版 springboot整合Quartz 新建一个springboot项目来 导入pom依赖 <?xml version=& ...

  5. spring boot 拦截 以及Filter和interceptor 、Aspect区别

    一.通过Filter这个大家很熟悉了吧,这是java规范的一个过滤器,他会拦截请求.在springboot中一般有两种配置方式.这种过滤器拦截并不知道你用的是哪一个Controller处理也不知道你用 ...

  6. golang ---CPU信息

    package main import ( "fmt" "github.com/StackExchange/wmi" ) type gpuInfo struct ...

  7. java之struts2之拦截器

    1.struts2能完成数据的设置,数据的封装,数据的类型转换,数据的校验等等.struts2是如何来完成这些功能的?struts2的所有功能都是由拦截器来完成的. 2.拦截器是struts2的核心. ...

  8. C# 生成随机的6位字母,包含大小写

    今天自己做项目需要生成随机的6位字母,于是自己写了一个,下面代码是可以生成任意位数字母的. string _zimu = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefg ...

  9. PowerShell命令批量添加、导出AD用户

    导入单个AD用户命令 New-ADUser -Name "周八" -Surname "周" -GivenName "八"-SamAccoun ...

  10. 视频质量评估 之 VMAF

    VMAF 方法: 基本想法: 面对不同特征的源内容.失真类型,以及扭曲程度,每个基本指标各有优劣.通过使用机器学习算法(支持向量机(Support Vector Machine,SVM)回归因子)将基 ...