发布于2026-07-03 阅读(0)
扫一扫,手机访问
在 Ja va 日常开发中,数学计算经常涉及 Math.sqrt()、Math.pow() 一类的重复前缀。很多人不知道,其实可以用 import static ja va.lang.Math.*; 把这些静态方法和常量直接“拉”到当前代码里——之后直接写 sqrt(16)、pow(2, 3)、PI 就好,代码立马清爽不少。

静态导入的写法要求完整包名和通配符,而且必须放在类定义之前、普通 import 语句之后(如果有普通导入的话)。
import static ja va.lang.Math.*;import static Math.*;(缺少完整包名)import static ja va.lang.Math;(缺星号 *,无法导入成员)导入后,以下方法和常量都能直接使用,不用再写 Math. 前缀:
abs(-5)、max(3, 7)、min(3, 7)sqrt(25)、pow(10, 2)、cbrt(27)sin(PI / 2)、cos(0)、toRadians(180)PI、E如果当前类或其他静态导入中恰好定义了同名成员(比如自己写了一个 public static final double PI = 3.14;),编译器就会报错。此时需要:
Math.PIimport static ja va.lang.Math.sqrt;、import static ja va.lang.Math.PI;*)在大型项目中滥用,易降低可读性必须指出的是,项目规模一大,通配符静态导入可能让代码的成员来源变得模糊,团队协作时谨慎使用为好。
传统写法与静态导入后的效果对比如下:
// 静态导入后
import static ja va.lang.Math.*;
public class Calc {
public static void main(String[] args) {
double a = sqrt(64); // ✅ 不用 Math.sqrt
double b = pow(2, 10);
double c = sin(PI / 4);
System.out.println(a + ", " + b + ", " + c);
}
}
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8