我正在尝试解析这样的字符串:

输入“20:00” - 输出将是“20”
输入“02:30” - 输出将是“2”
输入“00:30” - 输出将是“”。

这就是我的写作方式,我不喜欢我这样做的方式,寻找更有效的方法可能是在一次扫描中。有任何想法吗?

private String getString(final String inputString)
{
    String inputString = "20:00"; // This is just for example
    final String[] splittedString = inputString.split(":");
    final String firstString = splittedString[0];
    int i;
    for (i = 0; i < firstString.length(); i++)
    {
        if (firstString.charAt(i) != '0')
        {
            break;
        }
    }

    String outputString = "";
    if (i != firstString.length())
    {
        outputString = firstString.substring(i, firstString.length());
    }

    return outputString;
}

最佳答案

final String firstString = splittedString[0];
int value = Integer.parseInt(firstString);
return value == 0 ? "" : Integer.toString(value);

10-06 16:01