我有一个单独的测试类,该类将传入一个高值和低值的字符串,中间带有一个:,表示数字0-6。一个例子是“ 6:2”。我需要基于:分隔符来分隔这些数字,但是我的教授不希望我使用split或任何正则表达式。

public class DominoHighLowImpl_Laursen implements Domino {

public static final String HIGH_LOW_STRING_SEPARATOR = ":";

public DominoHighLowImpl(String highLowString)
{



}


所以输入

String substr = highLowString.substring(highLowString.indexOf(HIGH_LOW_STRING_SEPARATOR) + 1);


按预期在定界符后返回了数字



String substr = highLowString.substring(highLowString.indexOf(HIGH_LOW_STRING_SEPARATOR) - 1);


不返回定界符之前的数字。最后一部分我做错了什么?

最佳答案

检查substring(int beginIndex)substring(int beginIndex, int endIndex)

String high = highLowString.substring(0, highLowString.indexOf(HIGH_LOW_STRING_SEPARATOR));
String low = highLowString.substring(highLowString.indexOf(HIGH_LOW_STRING_SEPARATOR) + 1);

关于java - 定界符上的Java子字符串不使用split或regex,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55005738/

10-10 16:29