Должен ли я объявить объект шаблона как статический - PullRequest
5 голосов
/ 18 июля 2011

У меня есть следующий метод в классе:

public boolean validTransAmt()
{
    FacesContext facesContext = FacesContext.getCurrentInstance();
    Pattern p = Pattern.compile("^([0-9]{0,})(([\\.]?)([0-9]{1,2})([\\.]?))$");
    String transAmt = getDetails().getAmount();
    Matcher matcher = p.matcher(transAmt);

    if (!matcher.matches())
    {
        ...
    }

    ...
}

Будет ли этот шаблон перекомпилироваться при каждом вызове метода?Или это кэшируется?

Должен ли я объявить это как статическую переменную в моем классе?

1 Ответ

8 голосов
/ 18 июля 2011

Да, лучше, если вы объявите его как статический, чтобы избежать снижения производительности из-за перекомпиляции шаблона каждый раз.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...