`
zcy860511
  • 浏览: 20533 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

在递归再递归之后,终于解决了泛型嵌套问题。。。

阅读更多
总算给折腾出来了,只要定义泛型就可以完成Bean的转换
下面是一个很yindang的例子……我自己都这么认为
package org.javazone.jroi.framework.test.coder;

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

/**
 * @author Sandy Zhang
 */
public class ContainerBean
{
	private String name = null;

	private List<ElementBean> elementBeanList = null;

	private ElementBean[] elementBeanArray = null;

	private List<Set<String>> listSets = null;

	public List<String>[] lists1 = new ArrayList[10];

	private List<String[]> lists2 = new ArrayList<String[]>();

	private List<Set<String[]>[]> lists3 = new ArrayList<Set<String[]>[]>();

         //初始化以及setter和getter,这里就不写了……
}

这个是main的代码。。。
JsonEncoder encoder = JsonCoder.newJsonEncoder();
		JsonDecoder decoder = JsonCoder.newJsonDecoder();

		ContainerBean b = new ContainerBean("test name");
		String jsonString = encoder.encodeObject(b);

		ContainerBean bean =
				(ContainerBean) decoder.decodeObject(jsonString,
						ContainerBean.class);
		print(bean);

我在嵌套很yindang的lists3里面放了下面一个字符串。。。
//若干基础测试
teetttttttttttttttttttt

架构没考虑了,还是对反射的API不熟悉,导致开始的时候很多BUG……
分享到:
评论
6 楼 zcy860511 2010-02-10  
yidao620c 写道
递归再递归咋没说、、、、

只是一个递归下降的方法,外部实现不考虑,主要集中在GenericType这个类里面,我将泛型的获取封装在这个类里面,所以没贴代码出来,因为比较长
5 楼 yidao620c 2010-02-10  
递归再递归咋没说、、、、
4 楼 joehe 2010-02-08  
简单的才是最有效的,简洁的才是最美的
3 楼 renpeng301 2010-02-08  
悲剧啊1111
2 楼 wendal 2010-02-08  
围观中, 观望
1 楼 zcy860511 2010-02-07  
对了,里面我封装了一个GenericType这个类或许能有复用性,这个类集合了泛型的常用操作

相关推荐

    c# 泛型保存类结构,支持递归

    "c# 泛型保存类结构,支持递归"这一主题涉及到如何利用泛型来序列化和反序列化包含嵌套类的对象到XML文档中,同时处理可能存在的递归关系。 首先,我们需要了解泛型的基本概念。泛型提供了一种方式,让我们可以创建...

    递归清空所有TextBox的值

    递归算法是一种解决问题的方法,它通过函数调用自身来解决具有相似子问题的问题。在处理层次结构(如多层嵌套的控件)时,递归算法尤其有效。对于清空所有TextBox的值这一任务,如果界面中的TextBox分散在多层...

    C 代码 定义了克伦肖柯蒂斯嵌套序列之一 (CCN) 任何顺序的正交规则.rar

    2. **递归/嵌套**:由于CCN的嵌套特性,代码可能包含递归函数来生成序列。 3. **计算节点和权重**:这部分代码会涉及多级多项式展开,以及与之相关的数学计算,如傅里叶变换或矩阵运算。 4. **测试代码**:“测试...

    俄罗斯套娃奖品C++程序

    在这个特定的“俄罗斯套娃奖品”问题中,我们可以推测程序可能涉及到递归或者嵌套结构,因为“俄罗斯套娃”本身就是一个包含嵌套概念的玩具,每个娃娃可以装进另一个更小的娃娃中。在编程中,这可能转化为数据结构如...

    C#基础编程40例(windowform)

    在"算法:斐波拉切算法"中,初学者可以学习如何在C#中实现递归,以及理解递归算法的工作原理。 4. **递归与方法嵌套**:"4.递归算法,方法嵌套自身方法"涵盖了更复杂的递归形式,其中方法不仅调用自身,还可能嵌套...

    基于JQuery的asp.net树实现代码

    3. **递归数据结构**: 递归是一种常见的编程技术,其中函数调用自身来解决问题的子问题。在树形数据结构中,递归被广泛应用于构建子节点关系,因为树本质上是一个递归的数据结构。在文档的代码示例中,递归方法被...

    俄罗斯娃娃问题

    "俄罗斯娃娃问题",也被称为"嵌套娃娃问题",源于经典的俄罗斯套娃玩具,其中每个娃娃都可以打开并放入一...通过掌握递归、泛型和集合操作等C#核心概念,开发者可以有效地解决这类问题,并在实际项目中找到它们的应用。

    java 解析xml 多级

    在企业级应用开发中,XML(可扩展标记语言)经常被用作数据交换格式,尤其在集成不同系统或服务时。Java作为一种广泛使用的后端编程语言,提供了多种方式来解析XML文档,使得处理多级嵌套的数据变得可能。本文将详细...

    Scala By Example(2009_5)

    在Scala中,函数可以定义在其他函数内部,形成嵌套结构。这有助于封装和重用代码,特别是在局部作用域内需要辅助函数的情况下。 3. **尾递归**: 递归是函数式编程中的重要概念,而尾递归优化使得无限递归调用变...

    几个关于c++函数实例

    递归在解决分治问题(如快速排序、斐波那契数列)时非常有用,但需要注意避免无限递归。 5. 嵌套函数: 在C++中,函数可以被嵌套定义在另一个函数内部,但嵌套函数只有在其外部函数被调用时才能访问。这是为了增加...

    WinForm实现按名称递归查找控件的方法

    在WinForm中,每个容器控件(如Form、Panel等)都可以包含多个子控件,这些子控件可能又包含它们自己的子控件,形成一个嵌套的结构。递归查找控件就是遍历这个层次结构,直到找到目标控件或遍历完整个控件树。 以下...

    Problem Solving with C++ 7th edition

    递归是解决某些特定问题的强大工具,第794页介绍了递归与堆栈的关系。 模板和STL容器是C++中的高级特性,它们提供了一种泛型编程的方式,允许程序员编写与数据类型无关的代码。继承是面向对象编程的核心概念之一,...

    spark 代码示例

    嵌套函数是 Scala 中的一种函数定义方式,允许在函数内部定义新的函数。嵌套函数可以提高代码的可读性和灵活性。 5.尾递归 尾递归是一种函数调用方式,允许函数调用自身,但不创建新的栈帧。尾递归可以提高代码的...

    数据结构_郝斌

    - **算法**:指对存储的数据执行的一系列操作步骤,用于解决特定问题。 ### 数据结构的重要性 数据结构被认为是软件工程的核心课程之一,其重要性在于它直接影响到程序的性能和效率。程序通常可以分为三个部分:...

    C#经典算法(简单的冒泡到复杂点的八皇后)

    在编程领域,算法是解决问题和优化程序的核心工具。C#作为.NET框架的主语言,提供了丰富的功能和结构来实现各种算法。本篇文章将深入探讨在C#中实现的经典算法,包括冒泡排序、选择排序、插入排序、希尔排序以及八...

    VC++函数经典内容.PDF

    6. **递归与嵌套函数**:递归是编程中的重要技巧,书中会讲述如何正确使用递归解决复杂问题,并讨论递归函数的效率和局限性。此外,也会介绍在VC++中如何使用嵌套函数,以及其在特定场景下的优势。 7. **异步函数与...

    Scala实例手册(英文版)

    - 递归是函数调用自身的过程,Scala支持尾递归优化,即当函数的最后一行调用自身并直接返回其结果时,编译器会优化成循环,避免无限递归导致的栈溢出问题。 3. **第一类函数**: - 在Scala中,函数是第一类公民,...

    中国高等院校计算机基础教育课程体系规划教材讲授-第4章.ppt

    递归调用是函数自身调用自身的过程,常用于解决分治策略的问题。局部变量只在定义它们的函数内部可见,而全局变量在整个程序中都可访问。存储类别(如auto、static、extern和register)影响变量的生命周期和作用域。...

    C++编程思想以及解决方案

    C++编程思想是深入理解并高效使用这门语言的关键。...通过以上对C++编程思想的深入理解和实践,你将在解决问题和编写高效代码的道路上不断进步,避免前人踩过的坑,为自己的软件开发事业奠定坚实的基础。

    C#表达式计算器代码

    在本文中,我们将深入探讨如何实现一个C#表达式计算器,该计算器能够处理复杂的数学表达式并计算出正确的结果。...通过这样的项目,开发者可以增强解决问题的能力,提高编程技巧,并更好地掌握C#的特性。

Global site tag (gtag.js) - Google Analytics