Java:在分割后获取最后一个元素

176
我正在使用String的split方法,想要获取最后一个元素。数组的大小可能会改变。 示例:
String one = "Düsseldorf - Zentrum - Günnewig Uebachs"
String two = "Düsseldorf - Madison"
我想要分割以上字符串并获取最后一项:
lastone = one.split("-")[here the last item] // <- how?
lasttwo = two.split("-")[here the last item] // <- how?

我不知道运行时数组的大小 :(


1
你可以使用substring和indexOf来代替这个。 - Surendheran
@SurendarKannan 最高票答案中有一个使用lastIndexOf的示例。 - Adam Jensen
12个回答

3

你的意思是在编译时无法确定数组的大小?在运行时,可以通过lastone.lengthlastwo.length的值来确定它们的大小。


1

我猜你想在一行中完成这个。虽然有些麻烦,但是这是可能的 =^)

new StringBuilder(new StringBuilder("Düsseldorf - Zentrum - Günnewig Uebachs").reverse().toString().split(" - ")[0]).reverse()

tadaa,一行代码->您想要的结果(如果您在“ - ”(空格减去空格)上进行分割而不是仅使用“-”(减号),则还会失去分区前的烦人空格= ^),因此“ Günnewig Uebachs”而不是“ Günnewig Uebachs”(第一个字符为空格)
很好的额外功能-> lib文件夹中不需要额外的JAR文件,因此您可以保持应用程序的轻量级。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接