Java 变量

Java教程 - Java变量


变量由标识符,类型和可选的初始化程序定义。变量还具有范围(可见性/生存期)。

Java变量类型

在Java中,必须先声明所有变量,然后才能使用它们。变量声明的基本形式如下所示:

type identifier [ = value][, identifier [= value] ...] ;

变量定义有三个部分:

  • 类型可以是int或float。
  • identifier是变量的名称。
  • 初始化包括等号和值。
要声明指定类型的多个变量,请使用逗号分隔的列表。

int a, b, c; // declares three ints, a, b, and c.
int d = 3, e, f = 5; // declares three more ints, initializing d and f.

以下变量在一个表达式中定义和初始化。

public class Main {
  public static void main(String[] args) {
    byte z = 2; // initializes z.
    double pi = 3.14; // declares an approximation of pi.
    char x = 'x'; // the variable x has the value 'x'.
  }
}

在声明之前不能使用变量。

public class Main {
  public static void main(String[] args) {

    count = 100; // Cannot use count before it is declared! 
    int count;
  }
}

编译上面的代码会生成以下错误消息:


赋值运算符

赋值运算符是单个等号,=。它有这种一般形式:

var = expression;

var 的类型必须与表达式的类型兼容。赋值运算符允许创建一个赋值链。

 
public class Main {
  public static void main(String[] args) {
    int x, y, z;
    x = y = z = 100; // set x, y, and z to 100
    System.out.println("x is " + x);
    System.out.println("y is " + y);
    System.out.println("z is " + z);
  }
}

输出:


动态初始化

Java允许变量被动态初始化。在下面的代码中,Math.sqrt返回2 * 2的平方根,并将结果直接赋值给c。

public class Main {
  public static void main(String args[]) {

    // c is dynamically initialized
    double c = Math.sqrt(2 * 2);

    System.out.println("c is " + c);
  }
}

上面代码的输出是