Din*_*esh 1 java null variable-assignment
我只是检查一些表达式的正则表达式,在方法中,我一次又一次地重用该变量
Pattern pattern = Pattern.compile("([^test])");
Matcher matcher = pattern.matcher("SS");
if (matcher.find()) {
return false;
}
//Making it 'null' before re-use
pattern = null;
matcher = null;
pattern = Pattern.compile("([newtest]){4,}");
matcher = pattern.matcher("test");
if (matcher.find()) {
return false;
}
pattern = null;
matcher = null;
pattern = Pattern.compile("[stack]{2,}");
matcher = pattern.matcher("overflow");
if (matcher.find()) {
return false;
}
Run Code Online (Sandbox Code Playgroud)
null在设置其他新值之前,将变量设置为好吗?
它有意义吗?
注意:它可能是非标准的符号,再次使用相同的变量,但我只是想知道在重新赋值之前是否可以使变量无效?
在设置其他新值之前,将变量设置为null是否合适?
不 - 这是毫无意义的,并使代码更难阅读.
在我看来,无论如何你应该尝试一些循环方式 - 目前你一次又一次地使用相同类型的代码,这是一个坏主意.所有这一切都在变化 - 数据 - 所以参数化.我假设在您的实际代码中,您不会对模式和输入数据进行硬编码,但您可以轻松地获得要测试的模式列表.
我个人发现,如果我在一个方法中重用一个变量用于不同的目的(而不是根据其当前值修改它),那表明我应该重构.
| 归档时间: |
|
| 查看次数: |
614 次 |
| 最近记录: |