equals和==的区别是什么?

一、Java 变量类型

  在Java语言中,所有的变量在使用前必须声明。声明变量的基本格式如下:

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

  格式说明:type为Java数据类型。identifier是变量名。可以使用逗号隔开来声明多个同类型变量。

  以下列出了一些变量的声明实例。注意有些包含了初始化过程。

  int a, b, c; // 声明三个int型整数:

  a、 b、c int d = 3, e = 4, f = 5; // 声明三个整数并赋予初值

  byte z = 22; // 声明并初始化

  z String s = "runoob"; // 声明并初始化字符串

  s double pi = 3.14159; // 声明了双精度浮点型变量

  pi char x = 'x'; // 声明变量 x 的值是字符 'x'。

  Java语言支持的变量类型有:

  类变量:独立于方法之外的变量,用 static 修饰。

  实例变量:独立于方法之外的变量,不过没有 static 修饰。

  局部变量:类的方法中的变量。

  实例

  public class Variable{

  static int allClicks=0; // 类变量

  String str="hello world"; // 实例变量

  public void method(){

  int i =0; // 局部变量

  }

  }

  二、Java 局部变量

  局部变量声明在方法、构造方法或者语句块中;

  局部变量在方法、构造方法、或者语句块被执行的时候创建,当它们执行完成后,变量将会被销毁;

  访问修饰符不能用于局部变量;

  局部变量只在声明它的方法、构造方法或者语句块中可见;

  局部变量是在栈上分配的。

  局部变量没有默认值,所以局部变量被声明后,必须经过初始化,才可以使用。

  实例 1

  在以下实例中age是一个局部变量。定义在pupAge()方法中,它的作用域就限制在这个方法中。

  package com.runoob.test;

  public class Test{

  public void pupAge(){

  int age = 0;

  age = age + 7;

  System.out.println("小狗的年龄是: " + age);

  }

  public static void main(String[] args){

  Test test = new Test();

  test.pupAge();

  }

  }

  以上实例编译运行结果如下:

  小狗的年龄是: 7

  实例 2

  在下面的例子中 age 变量没有初始化,所以在编译时会出错:

  package com.runoob.test;

  public class Test{

  public void pupAge(){

  int age;

  age = age + 7;

  System.out.println("小狗的年龄是 : " + age);

  }

  public static void main(String[] args){

  Test test = new Test();

  test.pupAge();

  }

  }

给大家推荐一款Java基础课:2022年最新版Java300集

你可能感兴趣的:(equals和==的区别是什么?)