Java中最基本的存储单元之变量基础教程

 更新时间:2025年12月18日 11:34:19   作者:QuienFun  
变量相当于内存中一个数据存储空间的表示,类似与门牌号与房间的关系—变量看作门牌号,通过门牌号可以找到房间,而通过变量名可以访问到变量,这篇文章主要介绍了Java中最基本的存储单元之变量基础教程的相关资料,需要的朋友可以参考下

前言:

变量是什么?变量就是可以变化的量!本文包含对变量的介绍,基本语法,变量的三要素,以及变量的作用域和特殊的常量,最后进行一定拓展。希望这篇文章能够帮助你快速掌握变量和使用。

变量是什么?

前言中有提到变量就是可以变化的量,那具体变量是什么呢?

在Java中,变量是最基本的存储单元,用于存储数据值,变量就像一个容器,在程序运行期间可以改变它的值。

而Java是一种强类型语言,所以每个变量都需要声明其类型。

变量的本质

  • 计算机内存被分为许多个小单元,每个单元都有地址。
  • 而变量就是这些内存的地址的容易看懂的别名,方便给人使用
  • 变量的值可以在程序执行过程中改变(除非声明为常量及final)

一个变量有哪三个要素?

  1. 数据类型(可以存什么类型的数据以及会占用多少内存)例如:int、double、String、boolean等
  2. 变量名(必须是合法标识符)
  3. 值(存储的具体内容)

变量的使用

声明变量:

//数据类型 变量名;
int age;
String name;

声明并初始化:

//数据类型 变量名 = 值;
//语法:type varName [=Value] [{,VarName[=value]}]

int age = 100;
String name = "CSDN"

之前讲过Java的数据类型分为基本数据类型(8种)还有引用数据类型以及它们所占用的大小

基本类型

整型

byte b = 10;        // 1字节,-128 ~ 127
short s = 1000;     // 2字节,-32768 ~ 32767
int i = 100000;     // 4字节,最常用
long l = 100000L;   // 8字节,后缀加L或l

浮点型

float f = 3.14f;    // 4字节,后缀加F或f
double d = 3.14159; // 8字节,默认浮点类型

字符型

char c1 = 'A';      // 2字节,单个字符
char c2 = '\u0041'; // Unicode字符
char c3 = 65;       // ASCII码

布尔型

boolean flag1 = true;
boolean flag2 = false;

变量可以是基本类型 那就也可以是引用类型

引用类型

// 类类型
String str = "Hello";
Scanner input = new Scanner(System.in);

// 数组类型
int[] arr = new int[5];
String[] names = {"张三", "李四"};

// 接口类型
List<String> list = new ArrayList<>();

之前讲过变量的命名规则这里就不讲了,变量声明是一个完整的语句,所以每个声明都必须以分号结尾

变量的命名建议使用驼峰命名法

变量的作用域

  • 类变量
  • 实例变量
  • 局部变量
  • 参数变量
public class Variable {
    static int allClicks = 0;    // 类变量
    String str = "HelloWorld";   // 实例变量
    
    public static void main(String[] args) {
        int localVar = 10;       // 局部变量
    }
    
    public int add(int a, int b) {   // a, b 是参数变量
        return a + b;
    }
}
public class Demo {
    public static void main(String[] args) {
        // System.out.println(str1);   报错
        String str1 = "CSDN";
        System.out.println(str1);
        for (int i = 0; i < 10; i++) {
            System.out.println(i);
        }
        // System.out.println(i);  报错
    }
}

常量

有可以改变的量,那就是有不能改变的量喽?

是的,在Java中,常量是指程序运行过程中值不能被修改的量,它是固定不变的。

常量的核心特征是「一旦初始化,就无法被重新赋值」,可以用来定义固定的、通用的值。

常量的使用

使用final定义常量:

public class Constant {
    public static void main(String[] args) {
        final double PI = 3.14159;
        final int MAX_SIZE = 100;
    }
}

常量的命名使用全大写,单词之间使用下划线_分隔

拓展

修饰符不存在先后顺序 static final 等

static final double PI = 3.14;
final static double PI = 3.14;
static public double PI = 3.14;
// 以上都可以

可以使用_分隔数字

int money = 10_0000_0000;
System.out.println("数字之间的下划线不显示" + money);
// 输出: 数字之间的下划线不显示:1000000000

命名变量时可以写在一行(不推荐)

int a,b,c;
int a=1,b=2,c=3;

实例变量如果不初始化会有默认值

public class Demo {
    String name;
    int age;
    double PI;
    public static void main(String[] args) {
        Demo demo = new Demo();
        System.out.println(demo.name);
        // 输出 null
        System.out.println(demo.age);
        // 输出 0
        System.out.println(demo.PI);
        // 输出 0.0
    }
}

结尾

到此这篇关于Java中最基本的存储单元之变量基础教程的文章就介绍到这了,更多相关Java存储单元变量内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 解决springboot读取application.properties中文乱码问题

    解决springboot读取application.properties中文乱码问题

    初用properties,读取java properties文件的时候如果value是中文,会出现乱码的问题,所以本文小编将给大家介绍如何解决springboot读取application.properties中文乱码问题,需要的朋友可以参考下
    2023-11-11
  • Spring MVC数据绑定方式

    Spring MVC数据绑定方式

    这篇文章主要介绍了Spring MVC数据绑定方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • 如何解决hibernate一对多注解懒加载失效问题

    如何解决hibernate一对多注解懒加载失效问题

    这篇文章主要介绍了解决hibernate一对多注解懒加载失效的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • Spring Bean创建和循环依赖

    Spring Bean创建和循环依赖

    这篇文章主要介绍了Spring Bean创建和循环依赖,讲述了Spring容器中 Bean 的创建过程已经主要的方法,另外也着重分析了循环依赖的问题,需要的小伙伴可以参考一下
    2022-05-05
  • java Stream的聚合功能面试精讲

    java Stream的聚合功能面试精讲

    这篇文章主要为大家介绍了java Stream的聚合功能面试精讲,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • java json 省市级联实例代码

    java json 省市级联实例代码

    这篇文章介绍了java json 省市级联实例代码,有需要的朋友可以参考一下
    2013-09-09
  • Java算法中的归并排序算法代码实现

    Java算法中的归并排序算法代码实现

    这篇文章主要介绍了Java算法中的归并排序算法代码实现,归并排序使用的是分治思想(Divide and Conquer),分治,顾名思义,就是分而治之,是将一个大问题分解成小的子问题来解决,需要的朋友可以参考下
    2023-12-12
  • SpringBoot如何获取application.properties中自定义的值

    SpringBoot如何获取application.properties中自定义的值

    这篇文章主要介绍了SpringBoot获取application.properties中的自定义的值,目录结构文件代码给大家列举的非常详细,需要的朋友可以参考下
    2021-09-09
  • Spring Boot 中使用 Drools 规则引擎的完整步骤

    Spring Boot 中使用 Drools 规则引擎的完整步骤

    规则引擎主要用于将业务逻辑从应用程序代码中分离出来,提高系统的灵活性和可维护性,规则引擎通过预定义的规则来处理输入数据并做出相应的决策,从而实现业务逻辑的自动化和动态调整,本文给大家介绍Spring Boot中使用 Drools 规则引擎的指南,感兴趣的朋友一起看看吧
    2025-04-04
  • SpringMVC中文乱码踩坑记录

    SpringMVC中文乱码踩坑记录

    这篇文章主要介绍了SpringMVC中文乱码踩坑记录,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08

最新评论