java变量是什么?怎么定义的?有哪些注意事项?

news2024/12/29 8:33:26

1、变量的概念

先看下面这个案例,我们要输出10,是不是可以这么输出:

public class Demo {
    public static void main(String[] args) {
        System.out.println(10);
        System.out.println(10);
        System.out.println(10);
        System.out.println(10);
        System.out.println(10);
        System.out.println(10);
        System.out.println(10);
        System.out.println(10);
        System.out.println(10);
    }
}

如果我想让输出的10变成20,咋办呢?是不是也可以通过修改输出语句来实现,把它变成20就行了。看下面代码实现:

public class Demo {
    public static void main(String[] args) {
        System.out.println(20);
        System.out.println(20);
        System.out.println(20);
        System.out.println(20);
        System.out.println(20);
        System.out.println(20);
        System.out.println(20);
        System.out.println(20);
        System.out.println(20);
        System.out.println(20);
        System.out.println(20);
    }
}

但是,如果数据量很多呢?比如一千条、一万条数据呢?也是要这样改吗?

这时就会想,有没有修改一个地方的值就能让所有要修改的地方发生改变呢?答案是有的,我们用一个暂存位置把它存起来即可,看下图:

然后,是不是可以输出该暂存位置就把值输出了?答案是对的,下面看代码实现:

public class Demo {
    public static void main(String[] args) {
        System.out.println(暂存位置);
        System.out.println(暂存位置);
        System.out.println(暂存位置);
        System.out.println(暂存位置);
        System.out.println(暂存位置);
        System.out.println(暂存位置);
        System.out.println(暂存位置);
        System.out.println(暂存位置);
        System.out.println(暂存位置);
        
    }
}

这时,我们修改暂存位置的值,变成20,看下图:

通过修改暂存位置的值,是不是不用再去修改输出到控制台的语句,只需要修改暂存位置即可。所以也就实现了修改一个地方的值就能让所有要修改的地方发生改变。

public class Demo {
    public static void main(String[] args) {
        System.out.println(暂存位置);
        System.out.println(暂存位置);
        System.out.println(暂存位置);
        System.out.println(暂存位置);
        System.out.println(暂存位置);
        System.out.println(暂存位置);
        System.out.println(暂存位置);
        System.out.println(暂存位置);
        System.out.println(暂存位置);

    }
}

那这个暂存位置是什么呢?答:这个暂存位置就是变量,而且通过前面分析可以知道,变量里面的内容是可以发生改变的。

也就推出了,变量是什么?变量就是在程序的运行过程中,其中可以发生改变的量。从本质上来说,变量是内存中的一小块区域。

下面简单分析:

变量在电脑上总得有地方存储它吧,那它存在哪呢?答案就是存储在电脑内存中(具体怎么存储的本文不做详细介绍),所以变量是内存中一小块区域。不单单是变量,所有程序的运行都会存储到内存中。

2、变量的定义

想一下生活中的场景,朋友是不是可以分成一个大类?但是你叫你朋友出去玩,你会这样叫“朋友出去玩吗?”。不会吧,假设很多朋友在同一个地方,你朋友知道你叫哪个?对吧,所以你是不是会叫你朋友具体的名字,例如:张三出去玩吗?

因此,只有叫具体的名字,你朋友才会识别出来你再叫他,那电脑的存储位置是不是也有很多呢?所以是不是也有个存储位置名呢?答案是是的,不过不叫存储位置名,它叫变量名。

所以,变量它会有个变量名。

由于java是强类型语言,电脑需要对内容进行限定,所以需要给出明确的数据类型。

再想个场景,存储位置是存东西(内容)的吧,但是东西(内容)都没有,这个内存空间也就没有意义了,对吧,所以还得有个变量值。看下方图解:

通过前面的分析,可以得出变量的定义是:

格式:变量类型 变量名=变量值;

范例:int a = 10;

代码实现

public class Demo {
    public static void main(String[] args) {
        int a=10;
        System.out.println(a);
    }
}

3、变量使用的注意事项

(1)在同一作用域内,变量名不能重复;

public class Demo {
    public static void main(String[] args) {
        byte b=10;
        System.out.println(b);
        
        boolean b = true;
        System.out.println(b);
    }
}

运行结果

(2)long类型的变量定义的时候,为了防止整数过大,后面要加L(或l);

public class Demo {
    public static void main(String[] args) {
        long l = 1000000000000;
        System.out.println(l);
    }
}

运行结果,会出现错误

后面加L就不会报错了

因为给出一个整数默认是int类型的,虽然左边是long,但是右边其实还是int类型,而已又超出了int类型的范围,所以报错。

(3)float浮点类型为了防止不兼容的类型,所以要加F(或f)。

public class Demo {
    public static void main(String[] args) {
        float f= 3.14;
        System.out.println(f);
    }
}

运行结果

后面加F就不会报错了

因为浮点数默认是double类型,所以大的类型转成小的类型会出现精度损失。

 

本文为学习笔记,所参考文章均已附上链接,若有疑问请私信!

创作不易,如果对你有点帮助的话麻烦点个赞支持一下!

新手小白,欢迎留言指正!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1510593.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

物联网导论

物联网起源 物联网:是一个基于互联网、传统电信网等信息承载体,让所有能够被独立寻址的普通物理对象实现互联互通的网络。它具有普通对象设备化、自治终端互联化和普适服务智能化三个重要特征。 按照规定的协议,将具有感知、通信、计算等功…

【前端】HTML常用标签

因为想当个全栈,所以巩固了一下HTML与CSS和JS基础,这一篇博客是HTML部分 文章目录 HTML 基础标签 1HTML 基础框架HTML 基础标签语义标签文本格式化标签div 与 span 标签图像标签超链接特殊字符 基础标签 2 | 表格表格的使用表格标签表格属性表格的头部与…

堡垒机jumpserver的安装部署和使用

jumpserver的介绍: 官方文档:jumpserver官方中文文档 JumpServer 是广受欢迎的开源堡垒机,是符合 4A 规范的专业运维安全审计系统。JumpServer 帮助企业以更安全的方式管控和登录所有类型的资产,实现事前授权、事中监察、事后审计…

千寻星地一体农机导航燃爆2024内蒙农机展

千寻星地一体农机导航燃爆2024内蒙农机展 2024年3月9日-11日,2024内蒙古农牧业机械展览会在内蒙古呼和浩特敕勒川国际会展中心展出。展会上,千寻位置以“北斗时空智能,助力数智农业”为主题,展示了北斗导航农机自动驾驶系统、星地…

ELEVENLABS AI在线AI语音合成工具,28种语言

一、Elevenlabs简介 ElevenLabs 可以使用合成语音、克隆语音或全新的「人工」语音将文本转化为语音,并且这些语音可以模仿不同性别、年龄和种族的声音。 ElevenLabs基于目前强大的生成式语音模型,提供文本生成语音、语音合成、语音克隆和语音识别分类功…

深入了解与全面解析华为认证(HCIA/HCIP/HCIE)

一、网络行业技术认证 网络行业对于技术评定一般分为两种,一种是企业认证,一种是国家认证 企业认证属于技术认证,在国内的互联网企业都会承认,用于评定一个人的技术等级或者企业招投标的资质。 网络行业认证最好的有三种&#x…

c++之旅——第六弹

大家好啊,这里是c之旅第五弹,跟随我的步伐来开始这一篇的学习吧! 如果有知识性错误,欢迎各位指正!!一起加油!! 创作不易,希望大家多多支持哦! 一,静态成员&…

网页脚本 bilibili006:视频下载脚本修改+油猴脚本发布

视频下载脚本修改 原始脚本的下载的视频名称总是错的&#xff0c;调用的代码为 document.querySelector(.tag-txt).textContent &#xff0c;发现这是标签的名称 查找视频名称所在的类名称 <h1 title"任天堂告yuzu模拟器&#xff0c;龙神模拟器会被殃及池鱼吗"…

工业数学模型——冶金烧结配矿(一)

1、工业场景 从很多种铁矿石中选出适合烧结配料的部分铁矿石及其比例&#xff0c;并使其成本最低。 2、数学模型 设Pi代表了第i种原料的成本&#xff0c;xi代表了第i种原料在总配料中的比例&#xff0c;其中i取值为1,2,…,n。计算1吨配料成本&#xff1a; 第种原料的成本是Y…

分布式系统超详解析

目录 常见概念 基本概念 应用/系统 模块/组件 分布式 集群 主/从 中间件 评价指标 可用性 响应时长 吞吐量/并发量 架构演进 单机架构 应用数据分离架构 引入更多的应用服务器结点 读写分离架构 引入缓存--冷热分离的结构 垂直分库 业务拆分--微服务 为了更…

【惠友小课堂】膝关节可以只换一半?单髁置换术,哪里坏了修哪里,重塑新“膝”望

髁 这个字念啥&#xff1f; 被指到的人来回答 不念“踝&#xff08;hui&#xff09;”也不念“果” 正确念法为“kē”&#xff08;科额~髁&#xff09; 膝关节是人体承重较大的关节&#xff0c;并且使用频率较高&#xff0c;因此膝关节很容易磨损、损伤等。年龄的增长、意外受…

魔法之线:探索string类的神秘世界

&#x1f389;个人名片&#xff1a; &#x1f43c;作者简介&#xff1a;一名乐于分享在学习道路上收获的大二在校生 &#x1f648;个人主页&#x1f389;&#xff1a;GOTXX &#x1f43c;个人WeChat&#xff1a;ILXOXVJE &#x1f43c;本文由GOTXX原创&#xff0c;首发CSDN&…

小马智行与卢森堡签署自动驾驶合作谅解备忘录

近日&#xff0c;自动驾驶企业小马智行宣布与卢森堡大公国政府签署谅解备忘录&#xff0c;促进自动驾驶汽车及技术在卢森堡的发展。该文件由小马智行联合创始人、CEO彭军与卢森堡经济部长Lex Delles共同签署&#xff0c;这也标志着小马智行与卢森堡政府就推动该地区的自动驾驶研…

Python:数据分析工具Streamlit

简介&#xff1a;Streamlit是一个开源Python库&#xff0c;可以轻松创建和共享用于机器学习和数据科学的漂亮的自定义web应用程序。只需几分钟&#xff0c;您就可以构建和部署功能强大的数据应用程序&#xff0c;同时可以结合 matplotlib 做出漂亮的图表&#xff0c;实现数据可…

图像运算 - 图像像素点的加减异或操作

1、前言 图像是由像素组成的,而像素是由灰度值表现,灰度值由具体的正整数表现(0代表黑色,255代表白色)。因此,对于正整数可以进行一系列的数学运算,加减乘除等等,通过这些运算可以达到截取,合并图像等效果 2、图像的掩膜 掩膜的意思是利用特定的模板将图像感兴趣区域…

StringJoiner --java学习笔记

StringJoiner IDK8开始才有的&#xff0c;跟StrinaBuilder一样&#xff0c;也是用来操作字符串的&#xff0c;也可以看成是一个容器&#xff0c;创建之后里面的内容是可变的好处:不仅能提高字符串的操作效率&#xff0c;并且在有些场景下使用它操作字符串&#xff0c;代码会更…

Google发布创新AI工具Path Foundation和Derm Foundation,突破医学影像解读瓶颈,开启病理学与皮肤科研究新纪元

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

2024-3-11-C++作业

1>试编程 要求&#xff1a; 提示并输入一个字符串&#xff0c;统计该字符中大写、小写字母个数、数字个数、空格个数以及其他字符个数 源代码: #include <iostream>using namespace std;int main() {string s;cout << "请输入字符串&#xff1a;"…

采购管理系统:寻源到付款 (S2P) 流程自动化有什么好处?

企业的采购部门由各种流程和团队驱动&#xff0c;包括采购和应付账款。为实现战略目标而采用的策略流程之一是寻源到付款&#xff08;S2P&#xff09;流程。 何时使用 “寻源到付款”&#xff1f; 顾名思义&#xff0c;寻源到付款的主要目的是寻找最佳供应商以满足业务需求&a…

传感器是什么?有哪些类型及应用

什么是传感器 传感器是一种用于检测、测量和感知某种特定物理量或环境参数的设备或器件。它们能够将所测量的物理量转换为可供处理和分析的电信号、数字信号或其他形式的输出信号。传感器在各种领域中都有广泛的应用&#xff0c;包括工业、医疗、环境监测、汽车、航空航天、农…