关键字: html
1.节点操作
package Source;
//html树节点类
public class Node
{
//构造方法
public Node()
{
content = "";
hasContent = false;
parent = null;
isLeaf = true;
}
//构造方法,初始化此节点的内容,标签,与其父辈节点
public Node(String content, String tag, Node parent)
{
this.content = content;
this.tag = tag;
if(content.equalsIgnoreCase(""))
hasContent = false;
else
hasContent = true;
this.parent = parent;
isLeaf = true;
}
//添加节点内容
public void addContent(String str)
{
content=content+str;
if(content.equalsIgnoreCase("")) hasContent = false;
else hasContent = true;
return;
}
//设置为叶子
public void setLeaf(boolean is)
{
isLeaf = is;
}
//设置为块
public void setBlock(boolean is)
{
isBlock = is;
}
public String toString()
{
return content;
}
String content;
String tag;
boolean hasContent;
boolean isLeaf;
boolean isBlock;
Node parent;
}
2.树操作
package Source;
import java.util.LinkedList;
public class HTree
{
//构造方法,初始化
public HTree()
{
list = new LinkedList();
}
//插入节点
public void insert(Node node)
{
list.add(node);
}
//打印整棵树的节点的信息
public void print()
{
int len = list.size();
for(int i = len - 1; i >= 0; i--)
{
Node node = (Node)list.get(i);
String str = node.content.trim();
if(!str.equals("")) System.out.println(str);
}
}
//打印块的信息
public void print2()
{
int len = list.size();
for(int i = len - 1; i >= 0; i--)
{
Node node = (Node)list.get(i);
if(node.isBlock) System.out.println(node.content);
}
}
//合并节点,将叶节点合并至其双亲
public void merge()
{
int len = list.size();
for(int i = len - 1; i >= 0; i--)
{
Node node = (Node)list.get(i);
if(node.isLeaf)
{
Node curr = node;
String str = curr.content;
while(curr != null)
{
Node next = curr.parent;
if(next != null)
{
if(next.hasContent)
{
next.addContent(str);
next.setLeaf(true);
node.setBlock(false);
break;
}
next.setLeaf(false);
curr = next;
}
else curr = null;
}
if(curr == null) node.setBlock(true);
}
}
}
//获取块信息
public String[] getBlock()
{
int len = list.size();
int num = 0;
//获取非空节点的个数
for(int i = len - 1; i >= 0; i--)
{
Node node = (Node)list.get(i);
String str = node.content.trim();
if(!str.equals("")) num++;
}
String contBlock[] = new String[num];
num = 0;
//返回信息
for(int i = len - 1; i >= 0; i--)
{
Node node = (Node)list.get(i);
String str = node.content.trim();
if(!str.equals("")) contBlock[num++] = str;
}
return contBlock;
}
private LinkedList list;
}
分享到:
相关推荐
6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...
Java网页抓取是一个常见的任务,...由于其易用性和强大的功能,Jsoup已经成为Java开发者处理HTML数据的首选工具之一。结合完整的包集(javadoc和源码),开发者不仅可以快速上手,还能深入研究和定制,以满足特定需求。
在这个项目中,开发者可能使用了其中之一来构建浏览器的界面,如地址栏、标签页、前进/后退按钮等。 2. **URL类与HttpURLConnection**: Java中的`java.net.URL`类用于表示统一资源定位符,它帮助解析和访问网页。`...
6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...
6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...
在 EasyUI 中,异步树是指树形节点的数据不是一次性全部加载,而是根据用户操作动态地从服务器获取。这样可以提高页面加载速度,降低服务器压力,尤其在处理大数据量时更为适用。 在 Java 后端,我们需要创建一个...
- `Jquery插件 ztree.js 最好用的开源免费树形插件,没有之一.url`可能是一个链接,指向关于zTree的详细文档或教程,帮助开发者快速上手。 - `Java的授权与认证-java教程-PHP中文网.url`可能是提供有关Java安全...
Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个...
本文将深入探讨“网页动态树形菜单图”这一主题,以及与之相关的JSP技术。 动态树形菜单是一种能够展现层级关系的交互式用户界面组件,它通常用于导航菜单或数据展示,使得用户可以方便地浏览和选择层次结构中的...
Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个...
GET是HTTP协议中最基础的操作之一,用于从服务器获取资源。在爬虫中,我们通常发送GET请求到目标网站的URL,以获取HTML页面内容。 1. **导入必要的库** 要在Java中执行HTTP GET请求,我们需要引入Apache ...
6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...
jared是一个用来操作Windows注册表的 Java 类库,你可以用来对注册表信息进行读写。 GIF动画制作工具 GiftedMotion GiftedMotion是一个很小的,免费而且易于使用图像互换格式动画是能够设计一个有趣的动画了一系列...
jared是一个用来操作Windows注册表的 Java 类库,你可以用来对注册表信息进行读写。 GIF动画制作工具 GiftedMotion GiftedMotion是一个很小的,免费而且易于使用图像互换格式动画是能够设计一个有趣的动画了一系列...
Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个...
jared是一个用来操作Windows注册表的 Java 类库,你可以用来对注册表信息进行读写。 GIF动画制作工具 GiftedMotion GiftedMotion是一个很小的,免费而且易于使用图像互换格式动画是能够设计一个有趣的动画了一系列...
jared是一个用来操作Windows注册表的 Java 类库,你可以用来对注册表信息进行读写。 GIF动画制作工具 GiftedMotion GiftedMotion是一个很小的,免费而且易于使用图像互换格式动画是能够设计一个有趣的动画了一系列...
jared是一个用来操作Windows注册表的 Java 类库,你可以用来对注册表信息进行读写。 GIF动画制作工具 GiftedMotion GiftedMotion是一个很小的,免费而且易于使用图像互换格式动画是能够设计一个有趣的动画了一系列...
jared是一个用来操作Windows注册表的 Java 类库,你可以用来对注册表信息进行读写。 GIF动画制作工具 GiftedMotion GiftedMotion是一个很小的,免费而且易于使用图像互换格式动画是能够设计一个有趣的动画了一系列...
`Collection`是Java集合框架中最基础的接口之一,它代表了一个对象的集合。`Collection`接口的主要子接口包括: - **List**:有序集合,允许重复元素,如`ArrayList`、`LinkedList`。 - **Set**:无序且不允许重复...