当前位置: 首页 > 面试题库 >

Java:split()返回[Ljava.lang.String; @ 186d4c1],为什么?

楚昊明
2023-03-14
问题内容

而且我不知道为什么!

我基本上有一个STRING(是,不是数组),它具有以下内容:

[something, something else, somoething, trallala, something]

我想将其转换为String
[]。因此,首先我从第一个字符和最后一个字符除去substring(),以摆脱方括号[]。然后,我使用split()函数以逗号分隔。我尝试同时使用“ \
|” 和“,”和“ \,”具有相同的结果。

这就是我得到的:

[Ljava.lang.String;@186d4c1

这是它的代码。我把它变成了单线:

String[] urlArr = ((matcher.group(3).toString()).substring(1, (matcher.group(3).length()-1))).split(",");

如您所见,第一部分是(matcher.group(3).toString()),它确实返回有效的字符串(例如我上面发布的示例)。所以我不明白为什么它不起作用。

有任何想法吗?

编辑:

我对代码做了一些澄清:

String arrString = matcher.group(3).toString();
int length = arrString.length();
String[] urlArr = (arrString.substring(1, length-1)).split(",");
System.out.println(urlArr);

问题答案:

您将获得一个有效的Strings 数组,但是尝试直接打印该数组不会达到您期望的效果。尝试例如

System.out.println(Arrays.asList(urlArr));

更新资料

如果要一一处理解析的令牌,则可以简单地遍历数组,例如

for (String url : urlArr) {
  // Do something with the URL, e.g. print it separately
  System.out.println("Found URL " + url);
}


 类似资料:
  • 问题内容: 我有一个带有setter和getter方法的字符串数组,这是我表单中的一个复选框。我试图获取检查值,并且在打印时得到上述结果。 我尝试了该方法,但它仍然打印相同的内容。 然后,我执行以下操作: 我也尝试过和 那么,我怎么读这个字符串呢? 问题答案: 如果提供数组,则该方法 有效 。输出 是 (之后的数字几乎总是不同的) 请告诉我们退货类型

  • 根据JSON规范,表示null值的正确方法是文字。 预期结果: 实际结果:

  • 问题内容: 这是简单的代码,我没有得到设置位图的结果,而是得到了null。谁能告诉我我在哪里犯错了? 更新 好的,所以我无法像我想的那样将文本转换为图像。这样呢 这会创建位图吗? 问题答案: 从文档中: 返回 解码的位图;如果无法解码图像,则 返回 null。 字符串“ test”中涉及的字节不是有效的位图,对吗? 如果将文本“ test”保存在名为or 等的文件中,并试图在Windows中打开它

  • 问题内容: 为什么要用Python返回? 我如何获得改组后的值而不是? 问题答案: 更改列表 到位 。 在原位更改结构的Python API方法通常返回,而不是修改后的数据结构。 如果要基于现有列表创建 新的 随机混排列表,并按顺序保留现有列表,则可以使用输入的完整长度: 您还可以将with用于排序键: 但这会调用排序(O(NlogN)操作),而采样到输入长度仅需要O(N)操作(与所使用的过程相同

  • 问题内容: 我正在使用a 检查我的哈希密码。我有PHP 5.5: 我上车了。我已经检查了posts的值和mysql user_password_hash返回。 我不知道为什么它返回假 有任何想法吗? 问题答案: 手册中的列长度可能是问题所在: 建议将结果存储在可扩展超过60个字符的数据库列中(255个字符是一个不错的选择)。 链接

  • 问题内容: 我已经存储了在该数据库中插入并插入记录的过程。我想获取最后插入的记录的ID。返回NULL并返回正确的ID,为什么会发生?如我所读,因此最好在表上有一些触发器的情况下使用。我可以使用吗?不论触发器如何,它是否都在表的范围内返回ID? 那么问题是什么以及使用什么呢? 已编辑 问题答案: 就像奥德(Oded)所说的那样,问题在于您在执行之前要先询问身份。 作为解决方案,最好尽可能地接近运行。