Java的变量——Java基础(01),
Java的变量——Java基础(01),
每当学习一种新的编程语言,首先需要学习地肯定而且必须是‘变量’,不管那种计算机语言,变量都是一种抽象概念,是用来存储计算结果或者表示某个值的抽象概念。在日常生活中,变量的使用会在不经意间产生,当你买一瓶酸奶时,你需要的是打开支付宝或者微信的付款码,看似营业员不经意间的用扫码枪扫过,其实,在计算机中,会专门为了你的一瓶酸奶而在内存中开辟属于酸奶的存储空间,比如价格的存储空间,交易时间的存储空间,而变量就是指代酸奶在内存中开辟属于酸奶的存储空间;通过这个变量,计算机可以很容易取到运算需要的数据,酸奶的价格,交易的时间。public class Demo{
public static void main(String[] args) {
int intPrice = 400; //单位:分
long lonTime = System.currentTimeMillis()/1000; //单位:秒
System.out.println(intPrice);
System.out.println(lonTime);
}
}
这是一个Java的Demo类,main方法是Java的主方法,其中intPrice是指向酸奶价格的变量,lonTime是指代交易的时间,后面是对变量的打印输出,可在控制台查看。
对于变量我们需要注意几个方面:
1.变量的声明:
声明一个变量之前,需要确定声明这个变量是用来抽象什么概念,我这里需要的是酸奶的价格以及交易酸奶的时间,声明一个变量需要注意两点:变量名和数据类型。酸奶的价格我在这里选择int类型,交易时间选择的是long类型,然后给这两个变量取一个见名知意的变量名。
int intPrice;
long lonTime;
代码中,int和long是变量的数据类型,intPrice和lonTime是变量的名称,当声明时,JVM就会为他们在内存中开辟空间,而且声明变量时给出的数据类型将会决定内存中存储空间的结构。
int intPriceA, intPriceB;
int intPriceC,intPriceD = 400;
int intPriceE = 600,intPriceF = 800;
我们可以在一条语句中声明多个同类型的变量,中间使用逗号隔开,在末尾必须以;号结尾,英文状态下。
2.变量的命名:
变量命名的一般规则:
1.字母、数字、“$”或“_”符组成
2.不能以纯数字开头
3.严格区分大小写
4.不能使用Java保留字
另外,不建议使用中文去命名,包括中文的拼音字母
int a12_B$ = 200; //字母、数字、"$"、"_"组成,编译通过
int 1Abc = 400; //以纯数字开头,编译错误
int AbCdEf;
aBcDeF = 600; //变量严格区分大小写,编译错误
int int = 800; //int是Java的基本类型,使用了Java保留字,编译错误
int 价格 = 1000; //不建议使用中文,但编译可以通过
int jiage = 1200; //也不建议使用拼音,编译通过
一般规则知道后,我们也不能盲目的去命名一个变量,需要做到‘见名知意’,Java编程里有一个规范要求,命名还得采用“驼峰命名法”。对于命名,不仅仅对于变量,Java中的常量、方法、实体类、各种包都需要命名,因此Java中将这些名字统一称之为Java的标识符,变量的命名规则,也是标识符的一般规则。
int intPrice = 400; //int+Price组成变量intPrice
long lonTime = System.currentTimeMillis()/1000; //lon+Time组成变量lonTime
String strName = "酸奶"; //str+Name组成变量strName
以上代码是我个人常用的命名方式,对于酸奶的价格,我使用的是int类型,那么我在命名时将int写在前面,然后按照“驼峰命名法”将Price写在后面,那么就命名了一个int类型的变量intPrice,在我自己的代码里,我在其他地方看到这个变量时,我不用去找声明这个变量的地儿,我都知道这个变量是int类型;同理,交易的时间是long类型,那么lon+Time组成lonTime,我看到lonTime我就知道他是long类型。
3.初始化变量:
变量在使用之前,必须对变量进行初始化,没有经过初始化的变量是无法编译通过的。
public class Demo{
public static void main(String[] args) {
int intPrice = 400; //单位:分
int intCount = 2; //数量:2
long lonTime = System.currentTimeMillis()/1000; //时间:秒
intTotal = intPrice * intCount; //总价
System.out.println(intTotal);
System.out.println(lonTime);
}
}
上面代码中,买了两瓶酸奶,计算总价intTotal时,却没有对intTotal这个变量进行初始化,Java的JVM不会通过编译的,而且会报出编译错误。
变量的初始化必须在使用之前,通常的两种做法是声明时同时初始化和在第一次使用变量时初始化。
public class Demo{
public static void main(String[] args) {
int intPrice = 400; //声明时同时初始化
int intCount; //声明变量
intCount = 2; //马上需要使用到,必须初始化
int intTotal = intPrice * intCount; //使用变量,之前都进行了初始化
System.out.println(intTotal);
}
}
从上面代码就可以看出,只有经过初始化的变量,才能使用。
4.访问变量:
变量,肯定是可以改变的,最简单的访问变量,就是对变量的赋值和更改,对变量的操作,也就是对变量所指代的内存中存储数据的操作。
public class Demo{
public static void main(String[] args) {
int intPrice = 400;
intPrice = 800; //变量的更改
int intPriceA = 200;
int intPriceB = 400;
int intTotalPrice = intPriceA + intPriceB; //类型匹配,可以相加
int intPriceC = 250;
String strName = "酸奶";
String str = strName + intPriceC; //类型不匹配,不可以相加
}
}
从以上代码可以看出,对变量的访问无非就是对变量的操作,变量的更改,类型匹配可以相加,类型不匹配是不能相加的,编译也会报错。在一个项目中,往往最难找的错误或者bug,通常都是数据类型引起的,所以,从一开始就得有对数据类型有足够的驾驭能力,也因此,我自己在命名变量时,通常都是取数据类型的前三个字母+见名知意的名字,在经过“驼峰命名法”命名为一个能够看到变量就可以知道其数据类型的命名。
相关文章
- 暂无相关文章
用户点评