前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【测开技能】Java语言系列(三)变量和数据类型

【测开技能】Java语言系列(三)变量和数据类型

作者头像
雷子
发布2022-09-29 20:04:09
1540
发布2022-09-29 20:04:09
举报

Java系列分享

【测开技能】Java语言系列(一)Java入门

【测开技能】Java语言系列(二)Java基础语法

变量

什么是变量?

变量就是初中数学的代数的概念,例如一个简单的方程,x,y都是变量

如:y=x+1

其实在Java中,变量分为两种:基本类型的变量和引用类型的变量。

在java中,变量需要先定义,在使用例如:

代码语言:javascript
复制
int x = 100;

上述语句定义了一个整型int类型的变量,名称为x,初始值为100

可以写一个代码来输出下x是不是100

代码语言:javascript
复制
package com.company;

public class Main {

    public static void main(String[] args) {
  // write your code here
        int x=100;
        System.out.println(x);
    }
}

结果如下

当我们给x赋值两次,每次内容不一样,我们看下结果是什么样的

代码语言:javascript
复制

public class Main {

    public static void main(String[] args) {
        int x = 0;
        System.out.println(x);
         x=1000;
        System.out.println(x);
    }
}

仔细观察代码,可以发现,当定义来x是int后,二次赋值的时候,只能是int类型,且不用再次重新定义,最后结果:

除了int类型,java还有

  • 整数类型:byte,short,int,long
  • 浮点数类型:float,double
  • 字符类型:char
  • 布尔类型:boolean

各种整型能表示的最大范围如下:

  • byte:-128 ~ 127
  • short: -32768 ~ 32767
  • int: -2147483648 ~ 2147483647
  • long: -9223372036854775808 ~ 9223372036854775807
代码语言:javascript
复制
public class Main {
    public static void main(String[] args) {
        int i = 2147483647;
        int i2 = -2147483648;
        int i3 = 2_000_000_00; // 加下划线更容易识别
        int i4 = 0xff0000; // 十六进制表示的16711680
        int i5 = 0b1000000000; // 二进制表示的512
        long l = 9000000000000000000L; // long型的结尾需要加L
    }
}

浮点型

浮点类型的数就是小数

代码语言:javascript
复制
float f1 = 3.1f;
float f2 = 3.14e38f; // 科学计数法表示的3.14x10^38
double d = 1.79e08;
double d2 = -1.79e08;
double d3 = 4.9e-324; // 科学计数法表示的4.9x10^-324

对于float类型,需要加上f后缀

布尔类型

布尔类型boolean只有true和false两个值,布尔类型总是关系运算的计算结果:

代码语言:javascript
复制
package com.company;

public class Main {

    public static void main(String[] args) {
        boolean  bool1 = true;
        boolean bool2 = false;
        System.out.println( bool1);
        System.out.println( bool2);
        boolean isGreater = 5 > 3; // 计算结果为true
        int age = 12;
        boolean isAdult = age >= 18; // 计算结果为false
        System.out.println(isGreater);
        System.out.println(isAdult);
    }
}

看下输出的结果:

字符类型

字符类型char表示一个字符。Java的char类型除了可表示标准的ASCII外,还可以表示一个Unicode字符

代码语言:javascript
复制
public class Main {

    public static void main(String[] args) {
                char a = 'A';
                char zh = '一';
                System.out.println(a);
                System.out.println(zh);
    }
}

结果如下

注意char类型使用单引号',且仅有一个字符,要和双引号"的字符串类型区分开。

引用类型

除了上述基本类型的变量,剩下的都是引用类型。例如,引用类型最常用的就是String字符串:

代码语言:javascript
复制
String s = "hello 北京";

常量

定义变量的时候,如果加上final修饰符,这个变量就变成了常量:

代码语言:javascript
复制
final double PI = 3.1214; 
PI = 3000;

常量在定义时进行初始化后就不可再次赋值,再次赋值会导致编译错误。

根据习惯,常量名通常全部大写。

定义变量时,要遵循作用域最小化原则,尽量将变量定义在尽可能小的作用域,并且,不要重复使用变量名。

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

代码语言:javascript
复制
类变量:独立于方法之外的变量,用 static 修饰。
实例变量:独立于方法之外的变量,不过没有 static 修饰。
局部变量:类的方法中的变量。

参考

代码语言:javascript
复制
public class Main {
        static int abc=0;    // 类变量

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

        public void method(){

            int i =100;  // 局部变量
            System.out.println(i);
            System.out.println(abc);
            System.out.println(str);

        }
    public static void main(String[] args) {
            Main main=new Main();
            main.method();
                System.out.println(abc);
    }
}

输出结果如下:

我们在方法中定义的变量,只能在方法中调用。

针对局部变量,实例变量,类变量的总结如下:

代码语言:javascript
复制
Java 局部变量
局部变量声明在方法、构造方法或者语句块中;
局部变量在方法、构造方法、或者语句块被执行的时候创建,当它们执行完成后,变量将会被销毁;
访问修饰符不能用于局部变量;
局部变量只在声明它的方法、构造方法或者语句块中可见;
局部变量没有默认值,所以局部变量被声明后,必须经过初始化,才可以使用。

在上面的代码中,可以看到,我们定义的i变量 ,只能在我们调用method的方法的时候,才可以使用。

代码语言:javascript
复制
实例变量
实例变量声明在一个类中,但在方法、构造方法和语句块之外;
当一个对象被实例化之后,每个实例变量的值就跟着确定;
实例变量在对象创建的时候创建,在对象被销毁的时候销毁;
实例变量的值应该至少被一个方法、构造方法或者语句块引用,
  使得外部能够通过这些方式获取实例变量信息;
实例变量可以声明在使用前或者使用后;
代码语言:javascript
复制
类变量(也叫做静态变量)
类中以 static 关键字声明,但必须在方法之外。
无论一个类创建了多少个对象,类只拥有类变量的一份拷贝。
静态变量除了被声明为常量外很少使用,静态变量是指声明为 public/private,
  final 和 static 类型的变量。静态变量初始化后不可改变。
静态变量储存在静态存储区。经常被声明为常量,很少单独使用 static 声明变量。
静态变量在第一次被访问时创建,在程序结束时销毁。
与实例变量具有相似的可见性。但为了对类的使用者可见,
  大多数静态变量声明为 public 类型。

发现问题,解决问题。遇到问题,慢慢解决问题即可。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-06-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 雷子说测试开发 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 变量
  • 浮点型
  • 布尔类型
  • 字符类型
  • 引用类型
  • 常量
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档