Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 返回数字时是否应显式指定返回类型?_Java_Performance - Fatal编程技术网

Java 返回数字时是否应显式指定返回类型?

Java 返回数字时是否应显式指定返回类型?,java,performance,Java,Performance,考虑一些返回double的方法。在某些情况下,我需要返回默认的零值。我可以显式地将其指定为return0d,但java允许我们通过自动转换将其指定为return0 这种类型的转换是在编译时还是在运行时进行的?不指定类型(如性能)是否会产生任何潜在的负面后果?这称为错误。没有理由在0上使用0d:它是一个,因此编译器会自动将其转换为0d 如果查看返回的字节码0与返回的字节码0d: double a() { return 0; } double b() { return 0d; } 你可以看到它完全

考虑一些返回
double
的方法。在某些情况下,我需要返回默认的零值。我可以显式地将其指定为
return0d
,但java允许我们通过自动转换将其指定为
return0

这种类型的转换是在编译时还是在运行时进行的?不指定类型(如性能)是否会产生任何潜在的负面后果?

这称为错误。没有理由在
0
上使用
0d
:它是一个,因此编译器会自动将其转换为
0d

如果查看返回的字节码
0
与返回的字节码
0d

double a() { return 0; }
double b() { return 0d; }
你可以看到它完全一样:

  double a();
    Code:
       0: dconst_0
       1: dreturn

  double b();
    Code:
       0: dconst_0
       1: dreturn
因此,性能不会有任何差异。

它被称为。没有理由在
0
上使用
0d
:它是一个,因此编译器会自动将其转换为
0d

如果查看返回的字节码
0
与返回的字节码
0d

double a() { return 0; }
double b() { return 0d; }
你可以看到它完全一样:

  double a();
    Code:
       0: dconst_0
       1: dreturn

  double b();
    Code:
       0: dconst_0
       1: dreturn
因此,不会有任何性能差异