如何将int赋给String变量?

时间:2012-11-26 19:44:49

标签: java string variables int

我目前正在为Java做作业,但我被困了。我必须从三个参数中创建一个生日:day,month和year,它们是numbers = int。有了这个,我必须对有效日期进行一些检查。我认为这部分已经完成,但我对以下内容感到困惑:

我想要if语句检查当天,如果这一天是正确的,那么这段代码应该通过

运行
if (dag >=1 && dag <=31) 
{
    datum = dag; 
}

datum是一个字符串,因为我想得到这样的日期:DD-MM-YYY dag是一个Int。因此,每当我尝试编译它时,BlueJ在这部分提出错误,说“不兼容的类型”。我假设这是因为我尝试在字符串中放置一个Int。这有可能以任何方式,因为我无法找到如何。

2 个答案:

答案 0 :(得分:3)

使用String.valueOf方法将int转换为string: -

int i = 32;
String str = String.valueOf(i);

当然,请遵循@Brian's answer中有关您应该做的事情的建议。

答案 1 :(得分:3)

不要把它变成一个字符串。不是。我想你应该

  1. 创建一个Date对象来表示您的日期(日/月/年合并)
  2. 使用SimpleDateFormat以适当的格式打印该日期
  3. 这是适当的OO方式。否则你最终得到一堆不同的断开连接的变量,在它们的组合中表示一些对象类型,但你不能原子地操纵它们,调用它们上的方法等。把所有东西都称为字符串被称为 stringly-typing (与强类型相反)并且代码味道特别糟糕!

    在某个阶段,请查看Joda-Time以获得比上述建议更好的日期/时间API。但是目前我怀疑你没有下载额外的罐子,你的盘子已经足够了。