java - Java ArrayList 的 (ArrayList).toString 的反转是什么?

标签 java string arraylist encoding tostring

我正在使用 ArrayListtoString 方法将 ArrayList 数据存储到字符串中。我的问题是,我该如何走另一条路?是否存在将 String 实例中的数据解析回 ArrayList 的现有方法?

最佳答案

简短的回答是“否”。没有从字符串重新导入对象的简单方法,因为某些类型信息在 toString() 序列化中丢失。

但是,对于特定格式和特定​​(已知)类型,您应该能够编写代码来手动解析字符串:

// Takes Strings like "[a, b, c]"
public List parse(String s) {
  List output = new ArrayList();
  String listString = s.substring(1, s.length() - 1); // chop off brackets
  for (String token : new StringTokenizer(listString, ",")) {
    output.add(token.trim());
  }
  return output;
}

从它们的序列化 形式重构对象通常称为反序列化

关于java - Java ArrayList 的 (ArrayList).toString 的反转是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1518528/

相关文章:

java - 如何将 json 文件转换为某些对象类

c# - 奇怪的单声道编译错误

java - java文件的语法检查

java - 如何关闭打开的窗口,例如打开的 .txt 或 .pdf 文件

string - 短语字谜的高效算法

c++ - C++ 中字符的标准字符串行为

java - 从 ArrayList 检索数据时出现逻辑错误

java - ArrayList 错误,线程中出现异常 "main"java.lang.NullPointerException

c++ - 为什么字符数组接受 C++ 中的非 ASCII 字符?

java - 为什么方法不是静态的却说它是静态的?