为什么我不能在列表上使用 Apache 的 StringUtils.join?

发布于 2024-11-30 19:01:41 字数 783 浏览 1 评论 0原文

当我尝试时

StringUtils.join(myList,',');

,出现编译失败:

cannot find symbol
symbol  : method join(java.util.List,char)

但以下方法有效:

StringUtils.join(myList.toArray(),',');

docs (Apache Commons Lang 2.5) 似乎表明两者都应该有效,因为它们都记录了:

public static String join(Collection collection,
                      char separator)

public static String join(Object[] array,
                      char separator)

有什么想法吗?作为记录,我正在导入 import org.apache.commons.lang.StringUtils;

When I try

StringUtils.join(myList,',');

I get a compilation failure:

cannot find symbol
symbol  : method join(java.util.List,char)

But the following works:

StringUtils.join(myList.toArray(),',');

The docs (Apache Commons Lang 2.5) seem to indicate that both should work, as they record both:

public static String join(Collection collection,
                      char separator)

and

public static String join(Object[] array,
                      char separator)

Any ideas? For the record, I'm importing import org.apache.commons.lang.StringUtils;

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

甜尕妞 2024-12-07 19:01:42

我之前遇到过这个问题,并意识到这是由于我的导入顺序造成的。

一旦我将我的 commons JAR 的导入顺序调高,它就可以工作了。

希望这有帮助。

I had the problem earlier and realized it is due to the order of my import.

Once I shifted my commons JAR up the order of import, it works.

Hope this helps.

雪若未夕 2024-12-07 19:01:42

不完全是你的问题,但相关:

org.apache.commons.lang.StringUtils中,存在一个

join(Object[])

不带分隔符的方法。

join(Object[], char)
join(Collection, char)

全部采用分隔符(可以使用 String 而不是 char)。因此,如果您忘记了分隔符,您的错误消息可能会指向错误的问题。

Not quite your problem but related:

In org.apache.commons.lang.StringUtils, there exists a method

join(Object[])

That doesn't take a delimiter.

join(Object[], char)
join(Collection, char)

All take delimiters (may use String instesad of char). So if you forget the delimiter, your error message may be pointing to the wrong problem.

黎夕旧梦 2024-12-07 19:01:41

最可能的原因是,您使用的是较旧版本的 Commons Lang,因为使用 Collection 的方法仅在 2.3 中添加。

您可以通过查看 Jar 中 Implementation-Version 字段中的 MANIFEST.MF 文件来进行检查。

The most probable reason is, that you are using an older version of Commons Lang, since the method using a Collection has only been added in 2.3.

You can check that by looking in the MANIFEST.MF file in the Jar at the Implementation-Version field.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文