Java—获取给定子字符串之前的部分字符串的最佳方法(主要标准是性能)?

Java—获取给定子字符串之前的部分字符串的最佳方法(主要标准是性能)?,java,string,Java,String,我有字符串: 这是非常好的字符串特罗:jjj为我 我想要一根绳子 这是一条很好的线- 我知道我可以使用方法String#split,但我的同事说这不是最好的方法,因为这对性能有害 还有其他方法吗?是的,您可以使用以下方法: String s = "This is very good string-tro:jjj for me"; System.out.println(s.substring(0,s.indexOf("-")+1)); 输出: 这是一条很好的线- 是的,您可以使用以下方法: St

我有字符串:

这是非常好的字符串特罗:jjj为我

我想要一根绳子

这是一条很好的线-

我知道我可以使用方法
String#split
,但我的同事说这不是最好的方法,因为这对性能有害

还有其他方法吗?

是的,您可以使用以下方法:

String s = "This is very good string-tro:jjj for me";
System.out.println(s.substring(0,s.indexOf("-")+1));
输出:

这是一条很好的线-

是的,您可以使用以下方法:

String s = "This is very good string-tro:jjj for me";
System.out.println(s.substring(0,s.indexOf("-")+1));
输出:

这是一条很好的线-


str.substring(0,str.indexOf(“-”)
如何?使用substring方法。对于String类,它是一个常量时间方法,并且在性能方面是有效的。关于
str.substring(0,str.indexOf(“-”)
?使用substring方法。对于String类,它是一个常数时间方法,并且在性能方面是有效的。