JAVA 动态构建树(1)
1. 对自己的总结和理解的升华是我喜欢做的一件事,在实际项目过程中,很多地方都用到动态生成树形菜单的地方,现在就给大家讲讲如何动态生成一棵树。
2. 首先我们必须要建立树的节点模型,其实树的节点模型中往往就是我们需要存放的数据对象,很多时候,我们取得的到的数据对象都是以List的方式来给我们的。动态生成树无非就是将没有规律的一个列表,通过List的方式,生成有组织、有顺序的List数据对象列表。
树节点模型:
import java.util.ArrayList;
/**
* 通用树节点模型,该节点模型是我们数据对象的载体
* 通过对树的操作,达到对数据对象的操作
* @author 夏家吉<jijin0223@126.com>
*
*/
public class CommonTreeNode {
private ArrayList children;
private String name;
private CommonTreeNode parent;
private SystemMenu systemMenu;//在此处就是我们所对应的数据对象
public CommonTreeNode(String name){
this.name=name;
children = new ArrayList();
}
public void addChild(CommonTreeNode obj){
children.add(obj);
obj.setParent(this);
}
public void removeChild(CommonTreeNode obj){
children.remove(obj);
obj.setParent(null);
}
public void setParent(CommonTreeNode parent){
this.parent=parent;
}
public CommonTreeNode getParent(){
return this.parent;
}
public ArrayList getChildren(){
return children;
相关文档:
先来了解一下链表模式的原理:
首先写一个JavaBean,内容是要添加的元素和该元素的节点。
public class NodeBean implements Serializable
{
private Object data; //元素本身
private NodeBean next; //下一个节点
&n ......
Java关键字final、static使用总结
Java关键字final、static使用总结
一、final
根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类、非抽象类成员方法和变量。你可能出于两种理解而需要 ......
今天经理让写一个,根据信息上传时间,显示,?分钟前,?小时前,?天前,类似qq空间发表的心情日期;
用了一个自我感觉笨的方法,不过还是实现了,呵呵呵
public static String getCompareTime(String filetime){
//返回的字符串
String retStr =""; ......
国际化(Internationalization,I18N):希望产品是广泛适用性
本地化(Localization,L10N):能够符合当地的习惯
应用程序国际化的目标:
编写在任何受支持的区域设置中都同样能正常运行(且外观表现本地化)的代码。
国际化中的Unicode编码
·国际化/本地化工作的焦点:
语言、数字格式、日期时间格式、货币 ......