看一下下面两份代码:
public class StringUtil {//代码1
private StringUtil() {
// 工具类不需要实现
}
public static boolean isEmpty(final String str) {
return (str == null || str.length() <= 0 || "".equals(str.trim())) ? true : false;
}
}
public class StringUtil {//代码2
private StringUtil() {
// 工具类不需要实现
}
public static boolean isEmpty(String str) {
return (str == null || str.length() <= 0 || "".equals(str.trim())) ? true : false;
}
}
他们唯一的区别在于形参中少了一个final,但是却别还是很大的,我们在用工具类进行判断的同时,需要保证原数据的不变性(当然不排除某些特殊的需求),为了保证这种不变性,加一个final修饰是很正确的决定。