link-list java版

STM32F103四位数码管动态显示实战:从硬件连接到代码调试(附Proteus仿真) 本文详细介绍了STM32F103驱动四位数码管的动态显示技术,从硬件连接到代码调试的全过程。内容包括共阴/共阳数码管的区别、GPIO配置、动态显示原理及优化方法,并附有Proteus仿真验证。通过实战案例,帮助开发者快速掌握STM32数码管动态显示的核心技术。 阅读详情

最近在学习数据结构的java表示方法(本来C描述的就学不好,但觉得到时做毕业论文可能有用,所以就再学)
这是一个link-list的例子,半图形界面
Main.java是运行主类,ListTest.java是图形界面,List.java是链表主代码, Utility.java用来存储数据
I want to make the ActionListener as a separating class, but it doesn't work. So i make it as a method.

Main.java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Main
{
  public static void main(String [] args)
  {
    ListTest listTest = new ListTest();
    listTest.init ();
    listTest.setTitle("Link list");
    listTest.setSize (400,400);
    listTest.setVisible (true); 
  } 
}


ListTest.java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.lang.*;

public class ListTest extends JFrame implements ActionListener
{
  JButton addAtF,addAtB,delFrF,delFrB,print;
  JTextField input;
  JLabel display;
  JPanel p1,p2,p3,p4;
  Container container;
  Listener listener;
 
  public void init()
  {
   Listener listener = new Listener(); 
   //List myList = new List();
   input = new JTextField(35);
   display = new JLabel("Result:   ");
   JButton addAtF = new JButton("addAtF");
   JButton addAtB = new JButton("addAtB");
   JButton delFrF = new JButton("delFrF");
   JButton delFrB = new JButton("delFrB");
   JButton print = new JButton("print");
   JPanel p1 = new JPanel();
   JPanel p2 = new JPanel();
   JPanel p3 = new JPanel();
   JPanel p4 = new JPanel();
  
 
   container = getContentPane();
   p1.add (input);
   p2.add (display);
   p3.add (addAtF);
   p3.add (addAtB);
   p3.add (delFrF);
   p3.add (delFrB);
   p3.add (print);
   p4.add (p1);
   p4.add (p2);
   p4.add (p3);
   container.add (p4);
  
   addAtF.addActionListener(this);
   addAtB.addActionListener(this);
   delFrF.addActionListener(this);
   delFrB.addActionListener(this);
   print.addActionListener(this);
  
  /*addAtF.addActionListener(listener);
   addAtB.addActionListener(listener);
   delFrF.addActionListener(listener);
   delFrB.addActionListener(listener);
   print.addActionListener(listener);
  */    
  }

  public List myList;
  public Utility myUtility;
 
   
  public void actionPerformed( ActionEvent e)
   {
      List myList = new List();
      //JLabel display = new JLabel();    
      double ran = 100 * Math.random();
      int ranInt = (int)ran;
      Integer objInt = new Integer( ranInt );    
     
      String cmd = e.getActionCommand();
      if (cmd.equals("addAtF"))
      {
        
         if ( myUtility.count != 0)                 
          for (int i=0;i<myUtility.count;i++)
           {        
             Integer intOut = new Integer(myUtility.ranNum[i]);                   
             myList.insertAtFront(intOut);                           
           }
        display.setText("aaaa");
        display.repaint();
        myList.insertAtFront ( objInt );
        myList.print ();
        this.dataInput(ranInt);
       
        //myUtility.ranNum[i] = 123;
        //System.out.println("the random number "+ ranInt +" add at front");         
      }
     
      else if (cmd.equals("addAtB"))
      {
        System.out.println("add at back");
        myList.insertAtBack (objInt); 
      }
     
      else if (cmd.equals("delFrF"))
      {
        System.out.println("delete from front"); 
      }
     
      else if (cmd.equals("delFrB"))
      {
        System.out.println("delete from back"); 
      }
     
      else if (cmd.equals("print"))
      {
        myList.print (); 
      }
   }
   
  public void dataInput(int a)
    {
      if (myUtility.count ==0)
      {
        Utility.ranNum[0]=a;
        Utility.count = Utility.count+1;
        //System.out.println (Utility.ranNum[0]);
      }
      else
      {
       int i = Utility.count;
        myUtility.ranNum[i]=a;
        Utility.count = Utility.count+1;
        //System.out.println ("s3");
      } 
    } 

      
}

List.java
import java.*;

public class List
{
  private ListNode firstNode;
  private ListNode lastNode;
  private String name;
 
  public List( String s)
  {
    name = s;
    firstNode = lastNode = null; 
  }
 
  public List()
  { this("list");}
 
  public void insertAtFront( Object insertItem)
  {
    if(isEmpty())
       firstNode = lastNode = new ListNode( insertItem);
    else
       firstNode = new ListNode( insertItem, firstNode); 
  }
 
  public void insertAtBack( Object insertItem)
  {
   if( isEmpty())
       firstNode = lastNode = new ListNode( insertItem);
   else 
      lastNode = lastNode.next = new ListNode( insertItem);
  }
 
  public Object delFromFront() throws EmptyListException
  {
   Object removeItem = null;
   if (isEmpty())
       throw new EmptyListException(name);
   removeItem = firstNode.data;
   if( firstNode.equals (lastNode))
       firstNode = lastNode = null;
   else
       firstNode = firstNode.next;
   
   return removeItem;  
  }
 
  public Object delFromBack() throws EmptyListException
  {
   Object removeItem = null;
   if ( isEmpty())
        throw new EmptyListException(name);
       
   removeItem = lastNode.data;
   if(firstNode.equals (lastNode))
      firstNode = lastNode = null;
   else
     {     
       ListNode movePoObject = firstNode;
       while( movePoObject.next != lastNode)
       movePoObject = movePoObject.next;
     
       lastNode = movePoObject;
       movePoObject.next = null;
      }
    return removeItem;
  }
 
  public boolean isEmpty()
  {
    return (firstNode == null); 
  }
 
  public void print()
  {
    if (isEmpty())
    {
      System.out.println ("Empty" + name);
      return; 
    } 
   
    System.out.print ("The" + name + "is: ");
   
    ListNode current = firstNode;
    while( current != null)
    {
      System.out.print(current.data);
      current = current.next;
       
    }
   
    System.out.println ();
    System.out.println ();
  }
 


class ListNode
{
  Object data;
  ListNode next;
 
  ListNode( Object o)
  {
    data = o;
    next = null; 
  } 
 
  ListNode( Object o, ListNode nextNode)
  {
    data = o;
    next = nextNode; 
  }
 
  Object getNode()
  {
    return data; 
  }
 
  ListNode getnext()
  {
    return next; 
  }
}

class EmptyListException extends RuntimeException
{
  public EmptyListException (String name) 
  {
    super("The" + name +"is empty"); 
  }
}

}

Utility.java
public class Utility
{
  public static int ranNum[]
                 ={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
                   0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
                   0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
                   0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
                    };
  public static int  count = 0;
 
  public Utility()
  {
        
  }   
}

保姆级教程解决Edge Copilot该服务在你所在的地区不可用及Sign in to continue your chat.——电脑篇 相信很多人更新到Win11之后都注意到自带的浏览器右上角多了一个Copilot,这个副驾驶是微软与OpenAI合作,免费使用,包括插件功能。相当于你可以在电脑上免费的使用GPT4。很可惜,点开提示该服务在你所在的地区不可用。很多人第一时间想到科学的上网应该就可以解决了,尝试后又提示you’ve reached the conversation limit for today.Sign in to continue your chat.明明登录账号了为什么还是不能用?不是免费吗,为什么提示今天受限制。 其实上 阅读详情

相关推荐

从零搭建自动驾驶仿真环境:我的Nuplan-devkit实战笔记(含PyCharm配置技巧)

本文详细记录了从零搭建Nuplan-devkit自动驾驶仿真环境的完整流程,包括conda环境配置、pip版本控制、PyCharm专业版集成等关键步骤。特别针对Ubuntu系统下的依赖管理、数据目录优化和性能调优提供了实用技巧,帮助开发者高效构建稳定的自动驾驶仿真开发环境。

weixin_30505225的博客 480

java链表——LinkList详解

就不一一列举了,有兴趣的可以去看我的另一篇博客LinkList的模拟实现,那里面模拟实现了上述的所有方法。这里给个实例。实例// add(elem): 表示尾插 list . add(2);// 在起始位置插入0 list . add(0 , 0);// add(index, elem): 在index位置插入元素elem System . out . println(list);

baixian110的博客 5641

破解雪球网acw_sc__v2加密与无限debugger反爬策略

本文详细解析了雪球网的反爬机制,重点破解了其核心的acw_sc__v2加密参数与无限debugger反调试策略。通过实战案例,从抓包分析、逆向调试到算法还原,提供了完整的Python代码实现,帮助开发者掌握应对类似加密反爬的通用方法。

weixin_29207533的博客 1899

JAVA集合---LinkList

LinkedList简介 LinkedList 是一个继承于AbstractSequentialList的双向链表。它也可以被当作堆栈、队列或双端队列进行操作。 LinkedList 实现 List 接口,能对它进行队列操作。 LinkedList 实现 Deque 接口,即能将LinkedList当作双端队列使用。 LinkedList 实现了Cloneable接口,即覆盖了函数clone(),能克隆。 LinkedList 实现java.io.Serializable接口,这意味着LinkedList支

qq_35229940的博客 2376

基于Codex平台与AI Agent技能开发,实现抖音爆款视频分析与脚本自动生成

大家好,我是专注于AI应用开发的技术博主。最近在探索如何利用AI工具自动化内容创作时,我发现了一个非常有趣的组合:通过Codex平台创建自定义的Skill(技能),来批量分析抖音平台的爆款视频,并基于分析结果自动生成新的带货视频脚本。这听起来像是内容团队的“黑科技”,但实现起来其实有清晰的路径可循。本文将为你完整拆解这个实战项目,从环境搭建、Skill编写、数据抓取到视频脚本生成,手把手教你打造自己的“AI内容助理”。无论你是想了解AI Agent的开发,还是对短视频自动化创作感兴趣,都能从本文中获得可直接

weixin_34110749的博客 644

海康摄像头RTSP流延迟优化实战:从VLC到OpenCV的5种方案对比与性能调优

本文针对海康摄像头RTSP流的高延迟问题,深入剖析了延迟根源,并系统对比了从VLC、OpenCV到海康官方SDK、FFmpeg及硬件加速等五种主流方案的性能表现。重点分享了缓冲区设置、协议优化、多线程架构与硬件解码等实战调优技巧,旨在帮助开发者将视频流延迟从秒级优化至毫秒级,满足工业检测、安防监控等高实时性场景需求。

hh234的博客 806

Java LinkedList(Java自带链表类和Java实现链表)

Java LinkedList(Java自带链表类和Java实现链表)

weixin_44730746的博客 1568

SQL注入绕过information_schema:实战技法与替代路径详解

SQL注入是Web安全领域的核心漏洞类型,其原理是通过构造恶意SQL语句,干扰应用程序与数据库的正常交互逻辑,从而窃取或篡改数据。在渗透测试与CTF竞赛中,绕过常见防护措施是提升技术能力的关键。当标准的信息收集方式受阻时,例如无法访问information_schema数据库,攻击者需要掌握替代的元数据获取方法。这些技术价值在于模拟真实环境中日益严密的防御体系,锻炼在受限条件下的系统性信息收集思维。典型的应用场景包括存在WAF过滤、权限限制或编码干扰的实战环境。本文将围绕SQL注入这一核心,深入探讨如何利用

weixin_33980459的博客 430

【Java】链表LinkedList

链表(Linked List)是一种常见的数据结构,用于存储和组织数据。它由一系列节点(Node)组成,每个节点包含两个主要部分:数据域(Data)和指针域(Pointer)。 数据域存储节点所需的数据或信息,可以是任意类型的数据,如整数、字符、对象等。指针域则指向链表中的下一个节点,将节点连接起来形成链表结构。 链表中的节点并不一定按照物理上的连续位置存储,而是通过指针域相互连接。这使得链表能够灵活地插入、删除和修改节点,而无需像数组那样进行元素的移动。

qq_61635026的博客 1万+

顺序功能图基本结构

顺序功能图(Sequential Function Chart,SFC)是一种用于描述工业控制系统中顺序控制流程的图形化编程语言,广泛应用于PLC(可编程逻辑控制器)编程。其核心思想是将复杂的控制流程分解为多个有序的步骤,通过逻辑条件实现步骤间的切换。顺序功能图通过图形化的方式简化了复杂控制逻辑的设计,尤其适用于需要严格顺序控制的工业自动化场景。[初始步] → 转换条件1 → [步1] → 转换条件2 → [步2] → ...[步X] → → [步B] → 转换条件B → → [合并步]

ayingqin1的博客 1226

CLRNet车道线检测模型在Orin Nano Super开发板上的全栈部署与优化实践

本文详细介绍了将CLRNet车道线检测模型部署到NVIDIA Orin Nano Super开发板的全过程。内容包括:1) Orin开发板硬件规格分析;2) JetPack SDK环境配置与Python虚拟环境搭建;3) CLRNet模型架构解析与PyTorch实现;4) 模型转换与TensorRT加速优化方法。通过系统性的环境配置、模型转换和性能优化,为边缘计算场景下的车道线检测应用提供了完整的解决方案,实现了在Orin平台上的高效部署。

huanghm88的专栏 226

Java中链表(Linked list)用法(单链表,双链表)

Java中链表的用法1.链表的概念2.链表的操作3.Java中链表的使用

Sueko的博客 7432

AD22里面封装修改后,同步到PCB图里面

【摘要】本文介绍了Altium Designer 22中同步更新元件封装的三种方法:1)从PCB库直接更新:在PCB库面板右键选择"Update PCB With[封装名]";2)通过原理图标准更新:使用Design->Update PCB Document菜单;3)在PCB编辑器中验证更新:通过Tools->Update From PCB Libraries菜单。所有方法最终都需通过ECO(工程变更订单)确认变更,建议执行前仔细核对变更内容。这些方法适用于AD22及早期版本

whm128的博客 1763

java link 使用_java集合之Link的比较

第1部分 List概括先回顾一下List的框架图(01)List 是一个接口,它继承于Collection的接口。它代表着有序的队列。(02) AbstractList 是一个抽象类,它继承于AbstractCollection。AbstractList实现List接口中除size()、get(int location)之外的函数。(03) AbstractSequentialList 是一个抽...

weixin_29002935的博客 530

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Link List

◦ 循环中 move 会移动到第三个 2,直到 move.next 是 3(此时 move.val=2,move.next.val=3,循环结束),最终 move 指向第三个 2。◦ head.val=1,head.next.val=2,不重复 → head.next = self.deleteDuplicates(2),进入递归。◦ 循环检查 move.val=2 == head.val=2,move 后移到 3(此时 move.val=3!3. 确保所有重复节点都被删除,非重复节点保留并正确连接。

wanyu1114的博客 893

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

重学java——list and link例子

1-创建list or link 2-创建学生对象 3-add方法 4-迭代器 or for or superfor package com.cn1; import java.sql.SQLOutput; import java.util.ArrayList; import java.util.Iterator; import java.util.LinkedList; public class ListDemo { public static void main(String[] .

Yang_tt的博客 248

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Java中Link,set 和Map的区别,ArrayList,HashSet和HashMap的区别。

首先 List Set Map 分别继承了ArrayList HashSet HashMap , list 允许重复,set不允许重复,map是键值对形式,key-value key不能重复。 期次AryyList是线程不安全的,底层使用的是object数组,由于采用数组作为储存,那么插入和删除数据的时候就到位置的影响比较大,比如做add操作额时候,默认会将元素追加到数组的尾部,但是如果制定位...

weixin_30535843的博客 1483

Android短信链接唤起App全攻略:从Deep Link到App Link的实战避坑

在移动应用开发中,Deep Link(深度链接)是实现外部链接跳转至App内部页面的核心技术,它通过自定义URL Scheme建立通道。其原理是系统通过Intent机制匹配并唤起对应应用。然而,标准Deep Link存在安全风险与体验缺陷,如选择器弹窗和浏览器兼容性问题。为此,Android引入了App Link(应用链接),它基于HTTP/HTTPS标准与域名验证,实现了安全无感的直接跳转,极大提升了用户体验。在金融、电商、社交等需要精准营销与用户拉新的应用场景中,稳定可靠的链接唤起能力至关重要。本文聚焦

weixin_34347651的博客 341

java替换link href_Java 实例 – List 元素替换 – Break易站

Java 实例 – List 元素替换 – Break易站[Java 实例 – List 元素替换Java 实例以下实例演示了如何使用 Collections 类的 replaceAll() 来替换List中所有的指定元素:Main.java 文件import java.util.*;public class Main {public static void main(String[] args)...

weixin_31879641的博客 88

Link接口方法

package cn.test.two; import java.util.ArrayList; import java.util.Comparator; import java.util.List; /** * 前面介绍Collection接口的常用方法,接下来介绍Collection的子接口List的抽象方法,这些方法是List类型集合共有的方法。 * java.util.List extends Collection * 已经在Collection接口中介绍过的方法不在赘述 * * v.

HugmeWhenyoucopl的博客 2097

java集合之Link的比较

概要 前面,我们学完了List的全部内容(ArrayList,LinkedList,Vector,Stack)。 现在,我们再回头看看总结一下List。内容包括:第1部分 List概括第2部分 List使用场景第4部分 Vector和ArrayList比较 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3308900.html ...

weixin_30724853的博客 157

AcWing 827.Double linked list(double link list Module) Described by Java

After single link list , we now learn double link list module. Using re[] and le[] to show rightnext and leftnext. We can see the problem 实现一个双链表,双链表初始为空,支持5种操作: (1) 在最左侧插入一个数; (2) 在最右侧插入一个数; (3) 将第k个...

SoKeeGan 119

Singly Link List(单链表的实现java)

package com.datastructure.singlylinklist; /** * 实现一个单链表 * 实现功能: * 增加一个节点(头插法,尾插法) * 删除一个节点(删除第一个节点,删除最后一个节点,删除任何一个节点) * 查找(查找到一个list中的某个元素) * @author Xinyuyu * */ public class Sing...

weixin_30258027的博客 477

oracle如何创建Database Link

这其实是个小问题,创建dblink的语法语句随处可见,可我着实为了这个连接远程数据库的事情折腾了几天。 需求是这样的,在本地利用Oracle SQL Developer工具创建一个远程数据库A的连接,然后在该连接上建立另一个远程数据库B的连接,以便于两个数据库同步数据。 我以往在win系统上用PL/SQL的时候习惯了直接去配置oracle的tnsnames.ora文件,直接配置link

fygkchina的专栏 8571

2021-10-23(actcting list) (link list) actingArry linelist

public class 十二十三 { private int age; private String name; public 十二十三(){ System.out.println("hehe"); } public 十二十三(int age,String name) { this(); this.age=age; this.name=name; } public void fun(){ System.out.println(this); } publi

czhc1140075663的博客 227

Java Collection集合 Link列表详细解读

1.Collection集合 1.1集合体系结构【记忆】 集合类的特点 提供一种存储空间可变的存储模型,存储的数据容量可以随时发生改变 集合类的体系图 1.2Collection集合概述和基本使用【应用】 Collection集合概述 是单例集合的顶层接口,它表示一组对象,这些对象也称为Collection的元素 JDK 不提供此接口的任何直接实现,它提供更具体的子接口(如Set和List)实现 Collection集合基本使用 public class Collectio

子非余 186
下一篇: ERP英语
guiledmx
博客等级 码龄22年 1粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值