java - 如何在java中将List对象转换为字符串
问题描述
也许这是一个非常愚蠢的问题,但我正在努力从下面的代码片段中获取字符串值:
List<Map<String, Object>> list1= (List<Map<String, Object>>) mymap.get("getProduct");
Map<String, Object> myList= list1.get(0);
List<String> myproduct= (List<String>) myList.get("productName");
System.out.println("value " +myproduct.toString());
当我尝试打印这个时,我总是得到一个对象而不是纯字符串。我的输出:
[Apple]
预期输出:
Apple
我尽力了,但没有运气..有人可以帮助我如何从上面的列表中获取纯字符串。我对 Java 很陌生,任何帮助将不胜感激。
解决方案
因为myproduct
是List
字符串值,例如下面是带有水果名称的列表
List<String> fruits = new ArrayList<>();
list.add("apple");
list.add("mango");
System.out.println(fruits); //[apple,mango]
如果您想要列表中的每个值,您可以简单地使用for each
循环进行迭代
for(String str : myproduct) {
System.out.println(str);
}
如果您只需要第一个元素,您可以通过索引获取,但如果列表为空,则可能会出现索引越界异常
String ele = myproduct.get(0);
或通过使用 java-8 流
String ele = myproduct.stream().findFirst().orElse(null);
推荐阅读
- slack - 如何从 Slack 通知 Web 场景的触发器
- java - 如何在 Tomcat 上运行的 Spring REST 应用程序上找到未使用的端点?
- java - 为什么 Spring Boot 无法解析带有 + 符号的视图?
- .net - 服务器错误“无法在新的 .net 应用程序上加载类型 application.global”
- javascript - 如何创建日志文件前端角度?
- php - 如何将 php 数据放入 html 选择中?
- java - JAVA中如何知道线程的顺序
- java - 可迭代的java列表循环并发问题
- reactjs - 我的网站打开图元标记未显示在开发人员 Facebook 调试器中
- parsing - Ocaml:在递归函数中为 Ast 类型构建列表