您当前的位置: 首页 > 

柳鲲鹏

暂无认证

  • 0浏览

    0关注

    4642博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

两层循环的中断,注意中断退出

柳鲲鹏 发布时间:2021-10-12 10:04:20 ,浏览量:0

  昨天改了点代码,后来简单测试时发现出错了。于是定位到代码。

原来代码:

while (pos > areaStart && ch != '\n' && ch != '\t')
{
    pos--;
}

因为后面的字符判断太多,所以改成了新代码:

while (pos > areaStart)
{
    for (char item : SUPPER_FRACTION_CHARS)
    {
        if (ch == item)
        {
            break;
        }
    }
    pos--;
}

  反复检查也没发现问题。DEBUG了一下才发现问题出在中断循环上。吾只管中断出for,没有想到外层还有一个while。于是改成:

boolean breakFlag = false;
while (pos > areaStart)
{
    ch = doc.getChar(pos);
    for (char item : SUPPER_FRACTION_CHARS)
    {
        if (ch == item)
        {
            breakFlag = true;
            break;
        }
    }
    if (breakFlag)
    {
        break;
    }
    pos--;
}

关注
打赏
1665724893
查看更多评论
立即登录/注册

微信扫码登录

0.0499s