【问题标题】:Unnecessary use of variables [closed]不必要地使用变量[关闭]
【发布时间】:2012-06-26 21:22:09
【问题描述】:

我对人们为什么推荐你使用有点困惑:

long rantime = System.currentTimeMillis(); 
Random random = new Random(rantime);

什么时候可以使用:

Random random = new Random(System.currentTimeMillis());

单行方法会失败吗?如果没有,由于您没有不必要地创建变量,它不是更有效吗?

最好的做法是尽可能避免使用其他变量吗?

【问题讨论】:

    标签: android random


    【解决方案1】:

    大多数人认为:

    long rantime = System.currentTimeMillis(); 
    Random random = new Random(rantime);
    

    比这更具可读性:

    Random random = new Random(System.currentTimeMillis());
    

    鉴于 Android 项目会变得越来越复杂,我强烈建议您重视可读性,而不是涉及您在程序中使用的局部变量数量的琐碎优化。无论如何,编译器大部分时间都会优化这些东西。

    【讨论】:

    • 没错。最重要的是,编译器通常足够聪明,可以知道两行代码在功能上与一行代码相同,并将对其进行优化,以免不必要地创建变量
    • 是的,刚刚更新了我的答案:)
    • 大多数人不是所有人。我更喜欢较短的版本,我觉得它更容易阅读。
    【解决方案2】:

    随机和它的种子

    这甚至没有必要,Random 的默认构造函数已经使用系统时间作为种子。所以就用Random random = new Random();

    see here

    【讨论】:

    • 对不起,我没有给你打勾,尽管可以说你比另一个答案更好。这里有一个对你有用的“答案”。谢谢。
    猜你喜欢
    • 2016-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-11
    • 2015-12-16
    • 1970-01-01
    • 2015-07-03
    相关资源
    最近更新 更多