Java字符串最佳实践



我在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

所期望的符号相同。

最新更新