变量的声明和数据类型

发表时间:2017-05-08 13:43:02 浏览量( 59 ) 留言数( 0 )

学习目标:

1、认识Java的关键字

2、熟悉Java的内置的数据类型

3、学会如何定义变量,并会使用变量


学习过程:

一、关键字

关键字是程序语言的最小单位,是程序语言事先定义的,并且具有特殊意义的一些标 识符,在有些语言里也称为保留字。正如我们使用人类的语言一样,一篇文章总是一个个的文字组成,完整的程序就像一篇文章,关键字就是一个个的文字。相比我们人类语言的复杂性,java程序语言的关键字只有53个。具体如下:

访问控制:  private  protected  public

修饰类、方法、属性和变量:  abstract  class  extends  final  implements  interface   native  new  static    strictfp  synchronized  transient    volatile enum  assert

程序控制:  break  continue  return    do  while  if  else  for     instanceof switch  case  default

基本类型:  boolean  byte  char    double  float  int  long  short    null  true  false void

错误处理:  try  catch  throw    throws  finally

包相关:  import  package

变量引用:  super  this

保留字:  goto const

有些初学者总是问学习编程需要英文是否要很好。上面这些关键字你还是要记的。也就这么50几个。所以不用担心英文不好就学不会变成。

以上这些关键字就是程序员编写程序时使用的最小单位。其中const和goto虽然在Java中未被使用,但考虑到它们与C++的关联性,所以仍然保留为关键字。

二、数据类型

我们在编写程序时处理由于数、字符、和浮点类型的对象无法再分为更简单的部分,我们在自然界称为简单数据,到了计算机编程的世界,我们称之为基本数据类型,大多数语言都有定义基本数据类型,这些类型为我们处理信息的最小单位。Java有8种基本类型,分别是:

字节类型byte:

    byte 数据类型是8位、有符号的,以二进制补码表示的整数;

    最小值是 -128(-2^7);

    最大值是 127(2^7-1);

    byte 类型用在大型数组中节约空间,主要代替整数,因为 byte 变量占用的空间只有 int 类型的四分之一;

    例子:byte a = 100,byte b = -50。

短整型short:

    short 数据类型是 16 位、有符号的以二进制补码表示的整数

    最小值是 -32768(-2^15);

    最大值是 32767(2^15 - 1);

    Short 数据类型也可以像 byte 那样节省空间。一个short变量是int型变量所占空间的二分之一;

    例子:short s = 1000,short r = -20000。

整型int:

    int 数据类型是32位、有符号的以二进制补码表示的整数;

    最小值是 -2,147,483,648(-2^31);

    最大值是 2,147,483,647(2^31 - 1);

    一般地整型变量默认为 int 类型;

    例子:int a = 100000, int b = -200000。

长整型long:

    long 数据类型是 64 位、有符号的以二进制补码表示的整数;

    最小值是 -9,223,372,036,854,775,808(-2^63);

    最大值是 9,223,372,036,854,775,807(2^63 -1);

    这种类型主要使用在需要比较大整数的系统上;

    例子: long a = 100000L,Long b = -200000L。

    "L"理论上不分大小写,但是若写成"l"容易与数字"1"混淆,不容易分辩。所以最好大写。

单精度浮点型float:

    float 数据类型是单精度、32位、符合IEEE 754标准的浮点数;

    float 在储存大型浮点数组的时候可节省内存空间;

    浮点数不能用来表示精确的值,如货币;

    例子:float f1 = 234.5f。

双精度浮点型double:

    double 数据类型是双精度、64 位、符合IEEE 754标准的浮点数;

    浮点数的默认类型为double类型;

    double类型同样不能表示精确的值,如货币;

    例子:double d1 = 123.4。

布尔型boolean:

    boolean数据类型表示一位的信息;

    只有两个取值:true 和 false;

    这种类型只作为一种标志来记录 true/false 情况;

    例子:boolean one = true。

字符char:

    char类型是一个单一的 16 位 Unicode 字符;

    最小值是 u0000(即为0);

    最大值是 uffff(即为65,535);

    char 数据类型可以储存任何字符;

    例子:char letter = 'A';。

       

除了基本数据类型外,为了实际应用的需要,Java还提供了两个用于高精度计算的非基本数据类型的数字类,他们是:

  BigInteger——任意大的整数,可用于密码学计算等。

  BigDecimal——任意精度的定点实数,可用于精确的货币计算等。

这两个是数据类型对象在设计货币计算时非常有用,后面的示例中我们可以看到使用float和double运算时会有精度误差,在一些要求精度准确的应用,比如商品的价格计算,必须要使用BigDecimal。

三、定义变量

数据类型确定要存储在内存中的数据的类型,变量则是存储数据的基本单元 。变量就好比一个杯子,而数据类型就定义了这个杯子的大小和它能装载什么内容。

java是强类型语言,所有的变量都必须先声明才能使用,声明变量时必须指定变量存储信息的类型。变量的声明一般使用名值对的方式,包含变量名和变量值,通过变量名可以引用变量值,也可以修改变量名的值。

首先,声明一个变量的基本格式是:

    数据类型    变量名; 

在下面这个例子中,我们在main方法中声明了三个变量:

   public class Test {
	public static void main(String[] args) {
		int type;
		boolean flag;
		float score;
	}
}

可以看到,我们每一个变量的声明都是以类型说明符(参考上一节的java基本类型)开始,后面你可以自定义一个变量名,然后别忘了以分号结束,表示变量声明结束。类型的定义,约束了变量在存储区里所能表示的数据类型和空间大小。

我们在声明一个变量的时候也可以同时为其赋初值,上面提到变量的声明一般使用名值对的格式,具体格式如下:

    数据类型   变量名  =  数值;

如下面这个例子:

   public class Test {
	public static void main(String[] args) {
		int box = 100;
		int a = 300;
		boolean f = true;
	}
}

声明变量并同时赋予初值,我们称之为初始化。注意这里的等号(=)并不是我们以前学习数学时表示相等,而是赋予值的意思。这个时候名为box的这个变量所在的存储区保存的值就是100了。

我们可以在同一行同时声明多个同一类型的变量,这样可以简化我们的代码,提高可阅读性,具体格式如下:

     数据类型    变量名, 变量名,变量名;

如下面这个例子:

   public class Test {
	public static void main(String[] args) {
		int a, b, c;
	}
}

上面例子中,同时声明了三个整型变量(a,b,c),变量和变量之间使用英文逗号(,)隔开。当然我们也是可以想上面介绍的,为变量赋予初始值。如下面这个例子:

   public class Test {
	public static void main(String[] args) {
		// 变量a和变量c分别赋予了初始值。
		int a = 100, b, c = 20;
	}
}

变量声明后,我们就可以通过变量名引用变量值或者修改变量名所存储的值了。在同一作用域下,变量只能声明一次,但是可以多次的赋值,不断根据程序的需要修改变量原来存储的变量值。具体格式如下:

变量名  =  新的数值;

引用该变量名的值就更简单了,直接使用变量名即可。如下面这个例子:

   public class Test {
	public static void main(String[] args) {
		// 声明变量a,并同时赋初始化值是100;
		int a = 100;
		// 引用变量a,这时候输出的是变量所存储的值,应该是100
		System.out.println(a);
		// 为赋值200
		a = 200;
		// 再次引用变量a,输出的也是变量所存储的值,但这时候应该是200了
		System.out.println(a);
	}
}

上面的示例综合讲述了变量的声明,赋初始化值,应用和重写赋值等常用的语句,这里要重点说明的是,我们可以在程序运行时为变量多次赋值,但是每一次赋值都会覆盖该变量之前的变量值。这个例子看上去非常简单,但是要好好理解,这里理解复杂程序的关键基础,有着举足轻重的作用。

三、变量的命名规范

Java语言中,变量命名要符合一定规则。标识符是赋予变量、类或方法的名称。标识符可从一个字母、下划线(_)或美元符号($)开始,随后也可跟数字。标识符是大小写区别对待的并且未规定最大长度。

有效标识符如下: 

   identifier   ,  userName    ,User_name  ,  _sys_varl    ,$change

无效标识符如下: 

   123abc   ,  abc¥5    ,abc ert  ,  add34)