我刚才写的方法:代码气味? - 调整变量与+ - 1
private String getNameOfFileFrom(String path)
{
int indexOfLastSeparator = path.lastIndexOf('/');
if (indexOfLastSeparator > -1)
{
return path.substring(indexOfLastSeparator + 1);
}
else
{
return path;
}
}
困扰我的是该行:
return path.substring(indexOfLastSeparator + 1);
那是一个不好的做法,在线修改表达这样呢?有关如何重构以提高可读性的建议将非常受欢迎。
----编辑---- 确定更新后的评论。谢谢大家回答:) 我并不是想要真正改变变量的值,而只是使用它的表达式。
另一个帖子提示我可以在下面的第二个代码片段中找出表达式的那部分内容。好/差/没有区别? :)我开始怀疑我在这里过分谨慎。
return path.substring(indexOfLastSeparator + 1);
或
int indexOfFirstCharInFileName = indexOfLastSeparator + 1;
return path.substring(indexOfFirstCharInFileName);
我不认为有变量++的问题。我删除了我的答案,因为你的问题是语言不可知的。但是,如果你正在写作。NET,你应该使用System.IO.Path类作为你的文件路径解析逻辑。 – Will 2009-01-20 14:24:37
++运算符在这里不相关,因为变量本身没有被修改。 – 2009-01-20 14:26:40
正在回应某人删除了他们的评论... – Will 2009-01-20 14:28:51