小编Saw*_*yer的帖子

为什么Java程序员喜欢命名变量"clazz"?

我已经看到很多代码都有声明Class clazz,这起源于哪里?这是某种惯例吗?我认为'clazz'甚至不是英文单词,根本没有任何意义,这么多程序员怎么能巧妙地命名一个错误的名字呢?

java naming-conventions

145
推荐指数
5
解决办法
5万
查看次数

scheduleAtFixedRate vs scheduleWithFixedDelay

ScheduledExecutorService的主要区别scheduleAtFixedRatescheduleWithFixedDelay方法是什么?

scheduler.scheduleAtFixedRate(new Runnable() {
    @Override
    public void run() {
        System.out.println("scheduleAtFixedRate:    " + new Date());
    }
}, 1, 3L , SECONDS);

scheduler.scheduleWithFixedDelay(new Runnable() {
    @Override
    public void run() {
        System.out.println("scheduleWithFixedDelay: " + new Date());
    }
}, 1, 3L , SECONDS);
Run Code Online (Sandbox Code Playgroud)

它们在同一时间打印完全相同,似乎它们以完全相同的间隔执行.

java scheduled-tasks scheduledexecutorservice

105
推荐指数
4
解决办法
5万
查看次数

将许多参数传递给方法的最佳实践?

偶尔,我们必须编写接收许多参数的方法,例如:

public void doSomething(Object objA , Object objectB ,Date date1 ,Date date2 ,String str1 ,String str2 )
{
}
Run Code Online (Sandbox Code Playgroud)

当我遇到这种问题时,我经常将参数封装到地图中.

Map<Object,Object> params = new HashMap<Object,Object>();
params.put("objA",ObjA) ;

......

public void doSomething(Map<Object,Object> params)
{
 // extracting params 
 Object objA = (Object)params.get("objA");
 ......
 }
Run Code Online (Sandbox Code Playgroud)

这不是一个好的做法,将params封装到地图中完全是浪费效率.好处是,干净的签名,容易添加其他params与最少的修改.这种问题的最佳做法是什么?

java parameters performance parameter-passing

81
推荐指数
8
解决办法
8万
查看次数

什么更有效:System.arraycopy或Arrays.copyOf?

Bloch中的toArray方法ArrayList使用System.arraycopyArrays.copyOf复制数组.

public <T> T[] toArray(T[] a) {
    if (a.length < size)
        // Make a new array of a's runtime type, but my contents:
        return (T[]) Arrays.copyOf(elementData, size, a.getClass());
    System.arraycopy(elementData, 0, a, 0, size);
    if (a.length > size)
        a[size] = null;
    return a;
}
Run Code Online (Sandbox Code Playgroud)

如何比较这两种复制方法以及何时应该使用哪种方法?

java arrays performance

72
推荐指数
5
解决办法
6万
查看次数

为什么IntelliJ IDEA编译Scala的速度如此之慢?

我正在使用9.0.3这是最新版本的想法.当我在Idea中编写一些scala源代码时,编译和运行需要几秒钟.这不应该那么慢,这是正常的吗?

scala intellij-idea

70
推荐指数
0
解决办法
2万
查看次数

如何检查Object是否是Java中的集合类型?

通过使用java反射,我们可以很容易地知道对象是否是一个数组.什么是判断对象是否是集合的最简单方法(Set,List,Map,Vector ...)?

java

62
推荐指数
4
解决办法
8万
查看次数

按位不是运算符

为什么按位操作(~0);打印-1?在二进制中,不应该是1.为什么?

javascript c c++ java twos-complement

42
推荐指数
5
解决办法
5万
查看次数

面试问题:关于概率

面试问题:

给定函数f(x)1/4次返回0,3/4次返回1.使用f(x)写函数g(x),其中1/2次返回0,1/2次返回1.

我的实施是:

function g(x) = {
    if (f(x) == 0){ // 1/4 
        var s = f(x) 
        if( s == 1) {// 3/4 * 1/4
            return s  //   3/16
        } else {
            g(x)
        } 
    } else { // 3/4
            var k = f(x)
            if( k == 0) {// 1/4 * 3/4
                return k // 3/16 
            }  else {
                g(x)
            }       
    }
}
Run Code Online (Sandbox Code Playgroud)

我对吗?你的解决方案是什么?(你可以使用任何语言)

random algorithm probability

36
推荐指数
3
解决办法
4631
查看次数

为什么单例对象更面向对象?

Scala编程:综合循序渐进指南中,作者说:

Scala比Java更面向对象的一种方式是Scala中的类不能有静态成员.相反,Scala具有单例对象.

为什么单例对象更面向对象?不使用静态成员有什么好处,而是使用单例对象?

scala

35
推荐指数
3
解决办法
3498
查看次数

SBT到Maven转换器

由于大多数IDE只能导入Maven项目,我想从SBT托管项目生成POM.xml,有没有更好的方法呢?

scala maven sbt

33
推荐指数
3
解决办法
2万
查看次数