如何在Java中按特定索引拆分字符串?

如何在Java中按特定索引拆分字符串?,java,string,split,Java,String,Split,我有一个接受字符串的方法 如果它有三个字符,那么我在第0个和第一个元素之间放一个:。示例:123→ 1:23 如果它有四个字符,那么我在第一个和第二个元素之间放一个:。示例:1234→ 12:34 出于某种原因,我不断得到奇怪的结果 以下是我的方法: private String addColon(String openOrclose) { String newHour = null; if(openOrclose.length() == 3) { n

我有一个接受字符串的方法

  • 如果它有三个字符,那么我在第0个和第一个元素之间放一个

    示例:
    123
    → <代码>1:23

  • 如果它有四个字符,那么我在第一个和第二个元素之间放一个

    示例:
    1234
    → <代码>12:34

出于某种原因,我不断得到奇怪的结果

以下是我的方法:

private String addColon(String openOrclose)
{
    String newHour = null;
    if(openOrclose.length() == 3)
    {
        newHour = openOrclose.substring(0,0) + ":" + openOrclose.substring(1,2);

    }
    else
    {
        newHour = openOrclose.substring(0,1) + ":" + openOrclose.substring(2,3);
    }
    return newHour;
}

对于三个字符,我的结果是
:2
,对于四个字符,我的结果是
1:3

您很接近。您需要调整子字符串调用的标记:

private String addColon(String openOrclose)
{
    String newHour = null;
    if(openOrclose.length() == 3)
    {
        newHour = openOrclose.substring(0,1) + ":" + openOrclose.substring(1,3);

    }
    else
    {
        newHour = openOrclose.substring(0,2) + ":" + openOrclose.substring(2,4);
    }
    return newHour;
}

你很接近。您需要调整子字符串调用的标记:

private String addColon(String openOrclose)
{
    String newHour = null;
    if(openOrclose.length() == 3)
    {
        newHour = openOrclose.substring(0,1) + ":" + openOrclose.substring(1,3);

    }
    else
    {
        newHour = openOrclose.substring(0,2) + ":" + openOrclose.substring(2,4);
    }
    return newHour;
}

你的问题似乎与这个问题非常相关


注意:我本想在你的问题下对此进行评论,但我有49个声誉,需要多加1分。

你的问题似乎与这个问题非常相关


注意:我本想在您的问题下对此进行评论,但我有49个声誉,需要再加1分。

问题是您传递到
子字符串()的索引。

引自Java文档:

返回作为此字符串的子字符串的字符串。子串 从指定的beginIndex开始,并延伸到 索引endIndex-1。因此,子字符串的长度是 endIndex beginIndex。示例:

“汉堡包”。子字符串(4,8)返回“敦促”“微笑”。子字符串(1,5) 返回“英里”


问题是要传递到
子字符串()的索引。

引自Java文档:

返回作为此字符串的子字符串的字符串。子串 从指定的beginIndex开始,并延伸到 索引endIndex-1。因此,子字符串的长度是 endIndex beginIndex。示例:

“汉堡包”。子字符串(4,8)返回“敦促”“微笑”。子字符串(1,5) 返回“英里”


这将不起作用
子字符串(0,0)
javadocs状态结束索引-结束索引,独占。我尝试了子字符串(0),但它不起作用try
子字符串(0,1)
这将不起作用
子字符串(0,0)
javadocs状态结束索引-结束索引,独占。我尝试了子字符串(0),而这并没有起到任何作用,比如子串(0,1)