【JAVA零基础入门系列】Day4 变量与常量
【JAVA零基础入门系列】(已完结)导航目录
- Day1 开发环境搭建
- Day2 Java集成开发环境IDEA
- Day3 Java基本数据类型
- Day4 变量与常量
- Day5 Java中的运算符
- Day6 Java字符串
- Day7 Java输入与输出
- Day8 Java的控制流程
- Day9 Java中的那个大数值
- Day10 Java中的数组
- Day11 Java中的类和对象
- Day12 Java类的简单应用
- Day13 Java类的继承与多态
- Day14 Java对象的克隆
- Day15 对象的比较
这一篇主要讲解Java中的变量,什么是变量,变量的作用以及如何声明,使用变量。
那么什么是变量?对于初学者而言,可以将变量理解为盒子,这些盒子可以用来存放数据,不同类型的数据需要放在对应类型的盒子里。那么,我们为什么要使用盒子呢?主要用于存放程序运行过程中需要临时存取和操作的数据,打个比方,我们做一顿番茄炒蛋,需要先把番茄洗一洗,然后切好放碗里,鸡蛋打好后要先放另一个碗里,然后加上料酒,加水搅拌,之后再放锅里一顿瞎操作后,一顿美味的番茄炒蛋便出来了,这个过程中,番茄炒蛋相当于我们的结果,番茄跟鸡蛋是我们需要处理的数据,我们先对番茄跟鸡蛋分别进行了处理,而处理的过程中,我们都需要一个容器来存放它们,碗,碟,锅或者杯,这些容器就相当于是变量,显然,如果没有变量,我们很难做出这顿美味来,变量存在的意义便是存放数据,让程序更清晰,让程序便于修改和维护。
变量有四个要素,类型,变量名,值和作用范围。Java是强数据类型语言,每一个变量必须属于一种类型,一个int型数据需要存放在一个int型的变量中,同理,一个double类型的数据需要存放在一个double变量中。对于变量名的设置,也有一些规范,必须以一个字母开头,由字母或数字组成,这里说的字母包括大小写字母或者在某种语言中代表字母的Unicode字符,数字包括'0'~‘9’以及在某种语言中表示数字的Unicode字符和下划线_,以及美元符$(但不要使用),但Java保留字不能使用,此外,像'+','-'等符号是不允许出现在变量名中的,变量名中所有字符都是有意义的,并且大小写敏感,变量名的长度没有限制。为变量取一个有意义的名字是十分必要,当程序代码量增大时,这一点会显得越来越好重要。比如,age, name, sum, classNum等等
为了规范起见,希望大家从一开始就养成好习惯,使用小驼峰命名法是一个不错的选择,所谓的小驼峰命名法,就是变量名除第一个单词以外其他单词首字母大写,其他字母均小写,如teacherName, vacationDays,classmatesNum等等。
变量在使用之前,都需要声明,如:int num; 想要对一个变量赋值,就需要将变量名放在等号左侧,相应的值放在等号的右侧,如:int num; num =10; 也可以在声明变量的同时初始化变量,给变量赋初始值,如:int num = 10;声明可以出现在代码的任何地方,但在使用该变量之前必须先声明该变量。跟C与C++不同的是,在Java中,是不区分声明和定义的。
至于作用范围,便是变量有效范围,出了这个范围,变量便不能使用,这一点具体到后面再结合代码做说明。
给一个小栗子来理解一下变量的用法。
int length = 10;//定义一个整数型变量,变量名为length,并初始化赋值为10
System.out.println(length);//输出这个变量的值
length = 20;//给这个变量赋新值
System.out.println(length);//输出
这里会依次输出10和20。这里使用了注释,双斜杠后面的注释内容会被自动忽略,不会影响代码的运行。
所以变量的正确使用方式是先定义,然后再使用它,打个比方,把计算机比作一个仓库管理员,内存比作是仓库,当我需要使用碗的时候,我需要先登记一下,然后管理员给了我一个碗,我就可以肆无忌惮的使用它了,这里登记就好比声明。那为什么要声明呢?em....你不说我怎么知道你要的是碗还是碟还是杯子呢,只好给你送上Error大礼包。其次,这里说的杯子碗碟,都是专用的,也就是说,每一种器件,只能装一种特定类型的东西,就像int型变量就只能放int型的数据。
除了变量之外,Java中还有一个叫常量的家伙,用关键字final来指示常量,例如:final double PI = 3.14;常量,顾名思义就是不变的量,一旦被声明后,它的值就不能被改变,也因此必须在声明的时候初始化,常量可以理解为其值不能被改变的变量。常量命名一般情况下全部字母都需要大写,如有多个单词则用下划线连接。既然不能改变,那常量存在的意义是什么呢?用PI代替3.14的意义何在?当然有它的意义,例如计算圆的面积的时候使用3.14*5*5 自然没有 PI*5*5这样看起来清晰。而且还有一个很重要的一点,如果常量的初始化值需要改变,比如一开始设置一个常量叫做 FULL_MARK,一开始你以为满分只有100分,可是程序写完之后,被告知满分是120分,于是你只需要在该常量定义的地方将100改成120,而不需要将代码中的每一个100改成120,不仅增加了可阅读性,也增加了可维护性。
不要忽视代码的可阅读性,代码不仅仅是用来运行的,更多的是用来阅读的,而且读者不仅是你自己,还有可能是其他程序员,如果你写到最后,自己的看不下去了,那绝对算不上一份优秀的代码。
希望大家能把代码当作一个艺术品去完成,去享受那些字母从你指尖敲打而出的快感,这样才能更好的收获程序顺利运行时的快乐。
至此,本篇要介绍的内容就结束了。短小精悍系列。
【JAVA零基础入门系列】Day4 变量与常量的更多相关文章
- 【JAVA零基础入门系列】Day2 Java集成开发环境IDEA
开发环境搭建好之后,还需要一个集成开发环境也就是IDE来进行编程.这里推荐的IDE是IDEA,那个老掉牙的Eclipse还是先放一边吧,(手动滑稽). IDEA的下载地址:http://www.jet ...
- 【JAVA零基础入门系列】Day5 Java中的运算符
运算符,顾名思义就是用于运算的符号,比如最简单的+-*/,这些运算符可以用来进行数学运算,举个最简单的栗子: 已知长方形的长为3cm,高为4cm,求长方形的面积. 好,我们先新建一个项目,命名为Rec ...
- 【JAVA零基础入门系列】Day6 Java字符串
字符串,是我们最常用的类型,每个用双引号来表示的串都是一个字符串.Java中的字符串是一个预定义的类,跟C++ 一样叫String,而不是Char数组.至于什么叫做类,暂时不做过多介绍,在之后的篇章中 ...
- 【JAVA零基础入门系列】Day8 Java的控制流程
什么是控制流程?简单来说就是控制程序运行逻辑的,因为程序一般而言不会直接一步运行到底,而是需要加上一些判断,一些循环等等.举个栗子,就好比你准备出门买个苹果,把这个过程当成程序的话,可能需要先判断一下 ...
- 【JAVA零基础入门系列】Day9 Java中的那个大数值
什么是大数值?用脚趾头想也知道,当然是"大"的数值(233).Java中有两个用于表示大数值的类,BigInteger和BigDecimal,那到底能表示多大的数值呢?理论上,可以 ...
- 【JAVA零基础入门系列】Day10 Java中的数组
什么是数组?顾名思义,就是数据的组合,把一些相同类型的数放到一组里去. 那为什么要用数组呢?比如需要统计全班同学的成绩的时候,如果给班上50个同学的成绩信息都命名一个变量进行存储,显然不方便,而且在做 ...
- 【JAVA零基础入门系列】Day11 Java中的类和对象
今天要说的是Java中两个非常重要的概念--类和对象. 什么是类,什么又是对象呢?类是对特定集合的概括描述,比如,人,这个类,外观特征上,有名字,有年龄,能说话,能吃饭等等,这是我们作为人类的相同特征 ...
- 【JAVA零基础入门系列】Day12 Java类的简单应用
俗话说的好,实践出真知,所以除了理论知识掌握扎实以外,更重要的是要多加操练,这样才能掌握核心科技. 今天我们就用刚学会的类来实践一下,目标便是完成上一篇中的剁手任务. 我们的商品类已经准备好了,代码重 ...
- 【JAVA零基础入门系列】Day13 Java类的继承与多态
继承是类的一个很重要的特性,什么?你连继承都不知道?你是想气死爸爸好继承爸爸的遗产吗?(滑稽) 开个玩笑,这里的继承跟我们现实生活的中继承还是有很大区别的,一个类可以继承另一个类,继承的内容包括属性跟 ...
随机推荐
- 【搬运工】之YSlow安装教程
YSlow安装教程(我只是搬运工,推荐好用的地址) 地址: https://devework.com/yslow.html YSlow (解析为 why slow)是雅虎基于网站优化规则推出的工具,帮 ...
- hdu 6194 沈阳网络赛--string string string(后缀数组)
题目链接 Problem Description Uncle Mao is a wonderful ACMER. One day he met an easy problem, but Uncle M ...
- java基于注解的redis自动缓存实现
目的: 对于查询接口所得到的数据,只需要配置注解,就自动存入redis!此后一定时间内,都从redis中获取数据,从而减轻数据库压力. 示例: package com.itliucheng.biz; ...
- 32位汇编第四讲,干货分享,汇编注入的实现,以及快速定位调用API的数量(OD查看)
32位汇编第四讲,干货分享,汇编注入的实现,以及快速定位调用API的数量(OD查看) 昨天,大家可能都看了代码了,不知道昨天有没有在汇编代码的基础上,实现注入计算器. 如果没有,今天则会讲解,不过建议 ...
- 【2017集美大学1412软工实践_助教博客】团队作业6——展示博客(Alpha版本)
题目 团队作业6: http://www.cnblogs.com/happyzm/p/6791211.html 团队成绩 团队成员简介 项目地址 项目目标,包括典型用户.功能描述.预期用户数量 如何满 ...
- 团队作业八——第二次团队冲刺(Beta版本)第6天
团队作业八--第二次团队冲刺(Beta版本)第6天 一.每个人的工作 (1) 昨天已完成的工作 简单模式逻辑代码涉及与相关功能的具体实现 (2) 今天计划完成的工作 修改完善注册登录内容界面,编辑错题 ...
- 【Beta】 第四次Daily Scrum Meeting
一.本次会议为第四次meeting会议 二.时间:10:00AM-10:20AM 地点:陆大楼 三.会议站立式照片 四.今日任务安排 成员 昨日任务 今日任务 林晓芳 查询app提醒功能模块和用户登录 ...
- 201521123096《Java程序设计》第六周学习总结
1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图,对面向对象思想进行一个总结. 2. 书面作业 (1)clone方法 1.1 Object ...
- 201521123103 《Java学习笔记》 第四周学习总结
一.本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. (1)多态性:相同形态,不同行为(不同的定义): (2)多态绑定:运行时能够自动地选择调用哪个 ...
- 201521123114 《Java程序设计》第3周学习总结
1. 本章学习总结 2. 书面作业 Q1.代码阅读 以上代码可否编译通过?哪里会出错?为什么?尝试改正? 如果创建3个Test1对象,有内存中有几个i,几个j?请分析原因? 不能编译通过,Test1g ...