【问题标题】:Why won't my string update after going through a while loop?为什么我的字符串在经过一个while循环后不会更新?
【发布时间】:2015-12-25 00:57:27
【问题描述】:

我已经查看了一段时间,但我无法弄清楚为什么 paddedTime 不会打印为“0530”。我显然错过了一些东西。提前致谢!

public class TestString {

    public static void main(String[] args) {
        String time = "530";
        String paddedTime = "";
        while (time.length() < 4) {
            time = "0" + time;
        }
        if (time.length() == 4) {
            time = paddedTime;
        }
        System.out.println(paddedTime);
    }
}

【问题讨论】:

  • 您没有在初始 "" 之后为 paddedTime 赋值。
  • 你试过paddedTime = time ;而不是time = paddedTime;
  • 没关系。我真是个笨蛋。它应该是 paddedTime = time;。对不起各位!

标签: java string loops while-loop


【解决方案1】:

应该是

if (time.length() == 4) {
        paddedTime = time;//to assign time value to paddedTime
    }

有了这个

time = paddedTime;

您将空字符串分配给time

【讨论】:

    【解决方案2】:

    除了"",您永远不会为paddedTime 赋值。但是,这应该有效:

        String time = "530";
        String paddedTime = "";
        while (time.length() < 4) {
            time = "0" + time;
        }
        if (time.length() == 4) {
            paddedTime = time;
        }
        System.out.println(paddedTime);
    

    【讨论】:

      猜你喜欢
      • 2012-11-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-20
      • 1970-01-01
      • 1970-01-01
      • 2016-01-19
      • 1970-01-01
      相关资源
      最近更新 更多