所期望的符号相同。
我在Java中有4个字符串参数(来自请求对象)
String dd = req.getParameter(dd);
String mm = req.getParameter(mm);
String yyyy = req.getParameter(yyyy);
在验证了dd,mm,yyyy之后,我正在构建日期对象在第4字符串变量通过构建String date = dd+"/"+mm+"/"+yyyy;
再次在一些地方,我需要替换日期格式如下,
date = yyyy+mm+dd;
date =mm+"/"+dd+"/"+yyyy; // storing in db need this format
由于需要传递4个对象,将消耗多少内存还在坚持吗?内存调用是否更昂贵?有什么最佳实践吗?最后有多少字符串对象将在Stringpool?
我的建议是你不应该像其他人建议的那样担心微改进。可能是创建一个包装对象,例如MyDate
和构建Date
对象一次。之后,您可以使用不同的格式化程序来格式化您的日期。
package com.dd;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.joda.time.LocalDate;
public class MyDate {
private Date date;
public MyDate(Request req) {
int day = req.getParameter("dd");
int month = req.getParameter("mm");
int year = req.getParameter("yyyy");
date = new LocalDate(year, month, day).toDate();
}
public String format(String givenFormat) {
SimpleDateFormat sdf = new SimpleDateFormat(givenFormat);
return sdf.format(date);
}
}
注意-您需要确认和验证您从请求中获得的值,以及它们是否与LocalDate