java中的LinkedList,回顾一下

LinkedList重写类LinkList.java:

import java.util.LinkedList;
import java.util.List;

public class LinkList
{  
    private static LinkedList <LinkListInfo> linklist = new LinkedList<LinkListInfo>();
    
    public static void addToList(LinkListInfo displayinfo){
        linklist.add(displayinfo);
    }
    
    public static void addFistToList(LinkListInfo displayinfo){
        linklist.addFirst(displayinfo);
    }
    
    public static void addLastToList(LinkListInfo displayinfo){
        linklist.addLast(displayinfo);
    }
    
    public static void removeFistToList(){
        linklist.removeFirst();
    }
    
    public static void removeLastToList(){
        linklist.removeLast();
    }
    
    public static List getList(){
        return linklist;
    }
}

K-V信息类LinkListInfo.java:
public class LinkListInfo {
    
    private String IdName;
    private int IdNum;
    
    public String getIdName() {
        return IdName;
    }
    
    public void setIdName(String idName) {
        IdName = idName;
    }
    
    public int getIdNum() {
        return IdNum;
    }
    
    public void setIdNum(int idNum) {
        IdNum = idNum;
    }
}

应用测试StorageTest.java:
public class StorageTest
{
    public void storageTest (){     
         for(int i=0;i<10;i++){
             LinkListInfo linklistinfo = new LinkListInfo();
             linklistinfo.setIdName("SR"+i);
             linklistinfo.setIdNum(i);
             LinkList.addToList(linklistinfo);//静态方法类可以直接使用
         }
    }
    
}

测试主类MainTest.java:
import java.util.List;

public class MainTest {
  public static void main(String[] args){
    StorageTest storagetest = new StorageTest();
    storagetest.storageTest();
    List<LinkListInfo>  linklistinfo = LinkList.getList();
    for(int i=0;i<linklistinfo.size();i++){
      System.out.println(linklistinfo.get(i).getIdName());
      System.out.println(linklistinfo.get(i).getIdNum());
      System.out.println("..........");
    }
  }
}

打印内容:

SR0
0
..........
SR1
1
..........
SR2
2
..........
SR3
3
..........
SR4
4
..........
SR5
5
..........
SR6
6
..........
SR7
7
..........
SR8
8
..........
SR9
9
..........

原文地址:https://www.cnblogs.com/Sky-Raining/p/10279577.html

时间: 2024-10-15 16:02:41

java中的LinkedList,回顾一下的相关文章

Java中的linkedList

Java中的LinkedList实际上是双向链表实现方式 LinkedList<String> list = new LinkedList<String>(); list.add(1); list.add(2) 1->2 这说明默认的add方式是在list的尾部添加了一个元素 list.addLast(3); 1->2->3 list.addFirst(0); 0->1->2->3 list.removeLast(); 0->1->2

JDK学习---深入理解java中的LinkedList

本文参考资料: 1.<大话数据结构> 2.http://blog.csdn.net/jzhf2012/article/details/8540543 3.http://blog.csdn.net/jzhf2012/article/details/8540410 4.http://www.cnblogs.com/ITtangtang/p/3948610.html 5.http://blog.csdn.net/zw0283/article/details/51132161 本来在分析完HashSe

Java中多线程的回顾---学习笔记(二)

线程的创建方式有两种: implements Runnable和extends Thread. 继承Thread类: package com.test.threadtest; import android.os.Bundle; import android.app.Activity; import android.view.Menu; public class MainActivity extends Activity { @Override protected void onCreate(Bu

Java中使用LinkedList实现Queue

LinkedList提供了方法支持队列的行为,并且它实现了Queue接口,因此LinkedList可以用作Queue的一种实现. package cn.usst.queue.demo; import java.util.LinkedList; import java.util.Queue; import java.util.Random; /* * Queue的基本使用 */ public class QueueDemo { public static void main(String[] ar

Java中的queue和deque

队列(queue)是一种常用的数据结构,可以将队列看做是一种特殊的线性表,该结构遵循的先进先出原则.Java中,LinkedList实现了Queue接口,因为LinkedList进行插入.删除操作效率较高 相关常用方法: boolean offer(E e):将元素追加到队列末尾,若添加成功则返回true. E poll():从队首删除并返回该元素. E peek():返回队首元素,但是不删除 示例代码: public class QueueDemo { public static void m

Java中arraylist和linkedlist源代码分析与性能比較

Java中arraylist和linkedlist源代码分析与性能比較 1,简单介绍 在java开发中比較经常使用的数据结构是arraylist和linkedlist,本文主要从源代码角度分析arraylist和linkedlist的性能. 2,arraylist源代码分析 Arraylist底层的数据结构是一个对象数组.有一个size的成员变量标记数组中元素的个数,例如以下图: * The array buffer into which the elements of the ArrayLis

Java中LinkedList的remove方法真的耗时O(1)吗?

这个问题其实来源于Leetcode的一道题目,也就是上一篇日志 LRU Cache.在使用LinkedList超时后,换成ArrayList居然AC了,而问题居然是在于List.remove(Object o)这个方法. 我们知道,链表和数组相比,最主要的特点就是add和remove的操作是O(1)的.Java中的链表一般使用LinkedList这个类型,数组一般使用ArrayList.它们同时implements了List这个interface,所以都有remove(int index)和re

【数据结构】java中LinkedList学习总结

一.LinkedList实现原理概述 LinkedList 和 ArrayList 一样,都实现了 List 接口,但其内部的数据结构有本质的不同.LinkedList 是基于链表实现的(通过名字也能区分开来),所以它的插入和删除操作比 ArrayList 更加高效.但也是由于其为基于链表的,所以随机访问的效率要比 ArrayList 差. 二.LinkedList类定义 public class LinkedList<E> extends AbstractSequentialList<

java 中的JDK封装的数据结构和算法解析(集合类)----链表 List 之 LinkedList

List 只要有两个实现类(ArrayList 和linkedList ),ArryList是基于数组实现,LinkedList是基于链表实现,下面是小弟对LinkedList的一点理解: LinkedList :基于链表实现的集合        双链接列表实现{ @code  List}和{ @code   Deque} 接口.实现了所有可选列表操作,和许可元素(including{ @code  null}). 首先对实现的接口分析一下: Deque  (双端队列): 这种队列允许在队列头和