我在Java中有4个String参数(来自请求对象)
String dd = req.getParameter(dd);
String mm = req.getParameter(mm);
String yyyy = req.getParameter(yyyy);
验证dd后,mm,yyyy我正在建立日期
通过在某些地方再次构建String date = dd+"/"+mm+"/"+yyyy;
来替换第4个字符串变量中的对象我需要替换日期
格式如下,
date = yyyy+mm+dd;
date =mm+"/"+dd+"/"+yyyy; // storing in db need this format
因为需要传递4个对象所需的内存量 直到坚持在桌子上?内存通话费用高吗?有没有最好的做法? 最后,如何在Stringpool中使用多少字符串对象?
答案 0 :(得分:4)
我的建议是你不应该像其他人所说的那样担心微观改善。可以创建一个包装器对象,例如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