代码之家  ›  专栏  ›  技术社区  ›  Hadh

使用toString方法在java中仅显示日期

  •  0
  • Hadh  · 技术社区  · 9 年前

    我有一个 产品类别 和一个 主要类别 ,每个产品都有 日期 变量我正在设置Main中每个产品的日期,例如:

    product1.date=setDate("2015/05/18");
    

    这个 设置日期() 方法必须将Date或String变量作为该格式的参数,并将其解析为Date,以便为Product设置。我使用的是SimpleDateFormat,但它令人困惑,因为我想做两件事:

    我有两个问题:

    1-我如何使它只显示日期,例如:2015/05/10,而不是整个时区和一周中的某一天?

    2-我正在使用 到字符串() 方法来显示与该对象相关的所有信息(ID、标签、价格和日期)如何使用 到字符串() ?

    2 回复  |  直到 9 年前
        1
  •  1
  •   roeygol    9 年前

    你可以这样做:

    public String toString(){
    
        SimpleDateFormat f = new SimpleDateFormat("yyyy/MM/dd);
    
        String str = "";
    
        str += "Id: " + this.id + "\n";
        str += "Price: " + this.price + "\n";
        .
        .
        str += f.format(date);  
    
        return str;
    
    }
    
        2
  •  1
  •   Edwin Buck    9 年前

    如果您不关心小时、分钟、秒、毫秒和时区,我建议您实现setDate来设置相应的 Date 对象是GMT时区中该日期的第一个小时、分钟、秒、毫秒。相信我,这将在以后为您节省问题(也可以创建一个新副本,并丢弃输入的Date,因为这样做会允许人们在远处修改它)

    要打印日期,请使用SimpleDateFormat。您需要的格式是“yyyy/MM/dd”。M是大写,因为小写M表示分钟。