数据类型和变量

一、数据类型

java定义了8种基本数据类型,byte,short,int,long,char,float,double和Boolean。基本类型通常也称为简单类型。

基本数据类型又分为:

  整型:包括byte,short,int,long 代表整数类型

  浮点型:包括float和double    表示带小数位数的数字

  字符性:包括char  表示字符集中的符号,如:字母和数字

  布尔型:包括boolean,是一种用于表示true/false值的特殊类型

基本类型表示单个值---而不是复杂对象,尽管Java是完全面向对象的,但是基本类型不是面对对象的。他们与大多数其他非面向对象语言中的简单类型类似。其原因是效率。将基本类型设计成对象会极大地降低性能。


1、整型

  Java中定义了4种整数类型:byte、short、int和long。所有这些类型都是有符号的、正的或负的整数。java不支持无符号的、只是正值的整数。许多其他计算机语言同时支持有符号和无符号整数。

整型类型的宽度和范围

  byte  宽度:1个字节  范围:-128 ~ 127

  short 宽度:2个字节 范围:-2^15 ~ 2^15-1

  int  宽度:4个字节  范围:-2^31 ~ 2^31-1

  long  宽度:8个字节 范围:-2^63 ~ 2^63-1

 

  2、浮点型

  浮点数也称为实数,当计算需要小数精度的表达式时使用。例如:求平方根这类计算保存结果就需要使用浮点类型。java有两种浮点类型——float和double,他们分别表示单精度和双精度浮点数。

  float 宽度:4个字节  大致范围:>8个字节long类型

  double  宽度:8个字节  大致范围:>4个字节的float

3、字符型

  在java中,用于存储字符的数据类型时char,java中的char与c或c++中的char是不同的。在java中char的范围是2个字节,范围是0-65535。没有负的cha值。


4、布尔型

  布尔型被用于表示逻辑值。它只能是两个可能的值之一:true或false。所有的关系运算(例如:a

二、变量:

在java程序中,变量是基本存储单元。变量是通过联合标识符、类型以及可选的初始化器来定义的。此外,所有的变量都有作用域,作用域定义了变量的可见性和生命周期。

1、变量的声明

在java中,所有变量在使用之前必须声明。声明变量的基本形式如下:

int a,b,c;

int b=3;

int f=60;

char x="x";

double d=3.21;

其中int/char/double 是数据类型,a/b/f...是变量的名称可以通过只等一个等号和一个值来初始化变量。初始化表达式的结果类型必须与变量指定的类型相同。为了声名指定类型的多个变量,需要使用以逗号分隔的列表。

2、变量的作用域和生命周期

java允许在任何代码块中声明变量。代码块以"{"开始并以"}"结束。代码块定义了作用域。因此,每当开始一个新的代码块时就创建了一个新的作用域。作用域决定了对象对程序其他部分的可见性,并且也决定了这些对象的生命周期。

在作用域中声明的变量,对于在作用域之外定义的代码是不可见的(即不可访问)。因此,当在某个作用域中声明变量时,就局部化了该变量,并保护它免受为授权的访问和修改。实际上,作用域则为封装提供了基础。

作用域是可以嵌套的。如:当创建了一个代码块时,就创建了一个新的、嵌套的作用域。当遇到这种情况时,外层的作用域包围了内层作用域。这意味着在外层作用域中声明的对象对于内层作用域中的代码是可见的。然而,在内层作用域中声明的对象,在内层作用域之外是不可见的。

在代码中,可以在任意外置声明变量,但是只有在声明之后变量才是有效的。因此,如果在方法的开头定义变量,那么变量对于该方法的所有代码都是可见的。相反,如果在代码块的末尾声明变量,那么变量是没有用的,因为没有代码能够访问该变量。

当进入变量的作用域时创建变量,当离开他们的作用域时销毁变量。这意味着一旦离开作用域,变量就不会再保持原来的值。所以,对于在方法中声明的变量来说,在两次调用该方法之间,变量不会保持他们的值。对于在代码块中声明的变量来说,当离开代码块时会丢失他们的值。因此,变量的生命周期被限制在作用域之内。 

你可能感兴趣的:(数据类型和变量)