`
lfc_jack
  • 浏览: 144904 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类

数组与集合互相转化

 
阅读更多
package com.ray.util;

import java.util.ArrayList;
import java.util.List;

/**
 * 这个类的主要的作用是 实现一个list集合按照自己的方式变为String类型 
 * 同时能够把自己存入的string的字段变为一个集合
 * @author Administrator
 * @date 2017年4月16日
 */
public class ListToStringUtil {

	/**
	 * 集合变为自己想要的 a#b#c#d
	 * 
	 */
	public static String listToString(@SuppressWarnings("rawtypes") List list) {
		if (list.size() != 0) {
			StringBuffer buffer = new StringBuffer();
			if (list.size() == 1) {
				return list.get(0).toString();

			} else {
				buffer = buffer.append(list.get(0) + "#");
				// 循环遍历,拼接
				for (int i = 1; i < list.size() - 1; i++) {
					buffer.append(list.get(i) + "#");
				}
				buffer.append(list.get(list.size() - 1).toString());

				return buffer.toString();
			}

		}
		return null;

	}

	/**
	 * 对一串的 a#b#c#d 这样的字符串修改一个集合
	 * 
	 * @param string
	 * @return
	 */
	@SuppressWarnings({ "unchecked", "rawtypes" })
	public static List stringToList(String str) {

		String string[] = str.split("#");
		List list = new ArrayList<>();
		for (int i = 0; i < string.length; i++) {
			list.add(string[i]);

		}

		return list;

	}

	/**
	 * 测试下上面的两个方法是否有效
	 *  测试通过
	 * @param args
	 */
	@SuppressWarnings({ "rawtypes", "unchecked" })
	public static void main(String[] args) {
		String str;
		List list = new ArrayList<>();
		// 测试的是否需要i小于1 ,2,3,9,10等试试
		for (int i = 0; i < 101; i++) {
			list.add(i);

		}
		str = ListToStringUtil.listToString(list);
		System.out.println("集合转化为string类型:\n" + str);

		System.out.println("==========string类型转化为集合类型开始==============");
        
		//再次new一个集合
		List list2=new ArrayList<>();
		list2=ListToStringUtil.stringToList(str);
		for (int i = 0; i < list2.size(); i++) {
			
			System.out.print(list2.get(i)+" ");
			
		}
		
		
	}

}


分享到:
评论

相关推荐

    java实现列表、集合与数组之间转化的方法

    集合(Set)与数组的转化与列表类似。Set是一个不允许有重复元素的集合,常用的实现类有HashSet和TreeSet。将Set转换为数组,同样可以使用`toArray()`方法: ```java Set&lt;String&gt; set = new HashSet(); set.add("a");...

    iOS字典和模型之间互相转换

    MJExtension还支持批量转换,例如,如果有一组字典数组,我们可以使用`+[NSArray mj_objectArrayWithKeyValuesArray:]`将它们全部转化为模型数组。 4. **自定义转换规则**: MJExtension允许开发者自定义转换规则...

    list,set,map,数组之间的相互转换详细解析

    在Java编程语言中,数据结构是...此外,数组转换成List或Set时,如果数组包含null元素,转换后的集合可能不包含这些null元素,因为集合通常不允许null。在实际应用中,应根据具体情况选择合适的数据结构和转换方法。

    2023级大一Java基础期末考试口试题题库-15题随机问3题-音频

    10. **数组与集合的转换**:Java中数组和集合之间可以通过特定方式互相转换。Q10可能讨论如何将数组转化为List,或者将List转化为数组。 11. **字符串处理**:String类在Java中是不可变的,有许多内置方法用于处理...

    json与树的相互转换

    JSON数组则可以转化为树的子节点集合。 在.NET环境中,我们可以使用Newtonsoft.Json库进行JSON的处理。`Newtonsoft.Json.Net35.dll`是这个库的一个版本,它包含了丰富的功能,比如反序列化JSON到.NET对象,序列化...

    Java对象与Json之间的互相转换的jar包

    这个"Java对象与Json之间的互相转换的jar包"正是提供了这样的功能。 这个jar包可能包含了如Jackson、Gson、Fastjson等流行的Java JSON库,它们各自提供了丰富的API来方便开发者进行对象与JSON的转换。 1. Jackson...

    json工具类,java日期转换,字符串转换等各种工具类

    对于去重,可以先将数组转化为`HashSet`,因为集合类不允许重复元素,然后再转回数组。或者使用Java 8的流(Stream)API,如`distinct()`方法。 5. **集合排序**: `Collections.sort()`方法可用于排序List类型的...

    计算机二级公共基础知识

    例如,在一维数组[21,46,24,99,57,77,86]中,查找数据元素99,首先从第1个元素21开始进行比较,比较结果与要查找的数据不相等,接着与第2个元素46进行比较,以此类推,当进行到与第4个元素比较时,它们相等,...

    Java课件课堂笔记

    在使用循环或者迭代器遍历数组或集合时,要注意避免索引越界和语法错误,例如在使用foreach循环时。 12. **代码规范**:良好的编程习惯包括变量命名清晰、不重复,以及遵循一定的编码风格,这有助于提高代码的...

    java课件及实验源代码

    3. **数组和集合框架**:Java中的数组是存储相同类型元素的容器,而集合框架(如ArrayList、LinkedList、HashSet、HashMap等)提供了更灵活的数据结构。学习者需要掌握如何创建、添加、删除元素,以及遍历和操作这些...

    易语言字节集与图片互换

    字节集是易语言中用来存储一系列字节数据的数据类型,类似于其他编程语言中的字节数组或二进制字符串。它可以用来表示任何二进制数据,如图片、音频、视频等。图片则是一种二进制数据的特殊形式,通常以BMP、JPEG、...

    json-lib-2.4-jdk15

    `json-lib`库是Java开发中的一个常用工具,它支持多种类型的Java对象与JSON之间的转换,包括数组、集合、Map、日期等。这个库的优势在于其兼容性,可以处理各种版本的Java,如这里的`-jdk15`表明它是为JDK 1.5设计的...

    VB程序设计示例及源代码

    5. **数组和集合**:在VB中创建和操作数组,以及使用ArrayList或Generic.List等集合类。 6. **文件操作**:读写文件、流式I/O,如使用StreamReader和StreamWriter。 7. **数据库访问**:ADO.NET库的使用,如...

    死锁的检测与分析设计

    操作系统中的死锁是多进程环境下的一种常见问题,它发生在两个或多个进程互相等待对方持有的资源而无法继续执行的情况。死锁的检测与分析是确保系统稳定性和效率的关键环节。在这个课程设计中,我们将探讨如何通过...

    c语言实例解析精粹 c语言实例解析精粹

    数组是存储同类型数据的集合,处理数组时要注意下标越界问题。字符串在C语言中被视为字符数组,处理时需要特别关注字符串结束标识'\0'。文件输入输出则涉及到fopen、fread、fwrite、fprintf等函数,学习这些函数能...

    JAVA对象JSON数据互相转换的四种常见情况

    在介绍四种常见的Java对象与JSON数据互相转换的情况之前,先简要介绍一下进行这种转换的基本方法。Java对象转换为JSON格式通常可以使用如Jackson或Gson等流行的库来实现。这些库能够自动地将Java对象转换为JSON字符...

    Gson 2.3.1

    4. **复杂类型的处理**: Gson可以处理各种复杂的Java数据类型,包括基本类型、数组、集合、Map、自定义类等。此外,它还能处理嵌套的JSON结构,以及泛型类型。 5. **类型转换**: Gson提供了一些高级特性,如`...

    高等代数知识结构.doc

    在欧几里得空间中,正交化是将一组向量转化为一组互相正交的向量的过程。正交矩阵是其列向量互相正交的方阵,其逆矩阵是其转置,这在几何变换中有重要应用。 八、复数域上的线性代数 复数域上的线性代数引入了复数...

    java jdk实列宝典 光盘源代码

    列表、集合与数组的互相转换;java为数据结构中的映射定义一个接口java.util.Map,有四个实现类HashMap Hashtable LinkedHashMap TreeMap用法和区别;对Map排序; 5字符串 使用String;判断一个字符串是否是合法的...

Global site tag (gtag.js) - Google Analytics