基本数据类型的变量

发表时间:2017-05-08 14:14:34 浏览量( 56 ) 留言数( 0 )

学习目标:

1熟练Java的内置的数据类型

2、会使用变量进行简单的运算


学习过程:

一、整型变量

上一节中我们介绍了描述整型的三个符号:短整型(short)、整型(int)和长整型(long),它们都可以定义整型变量,但是由于分配的内存空间不同,所能表示的数据的长度也不同。

我们可以定义并初始化一个整型变量:

       
      int a=100;

那么变量a最大只能表示2147483647。如果赋值超过这个数,程序会报错,我们要根据实际需要使用不同的整型类型。下面我们重新给a赋值

       
      a=2147483647;

这个数据比较大,对我们而言比较难以看清,JDK 7之后整型数据我们可以使用以下这种方式赋值

        
      a=2_147_483_647;

另外我们定义整型时一般使用十进制表示,java也提供了定义为八进制和十六进制来表示:

八进制就是只能表示:0 1 2 3 4 5 6 7 ,

注意:八进制必须以0开头。如:

0123 045 098 046

 

十六进制:

0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F

注意:以十六进制表示时,需以0x或0X开头,如:

0x8a 0Xff 0X9A 0x12

 

还有就是对长整型的初始化和赋值时要主意,一般我们定义一个整数时默认都是整型,为了表示长整型我们需要在整数的后面加一个英文字符'L'或者'l',由于英文字符'l'和数字‘1’比较类似,所以我们习惯使用大写字母'L'。

如:

long a=9L;

long b=156L;// 长整型必须以L做结尾

二、浮点型

浮点数类型有float(32位)和double(64位)两种类型,分别叫做单精度浮点数和双精度浮点数,表示浮点数时,要在后面加上f(F)或者d(D),用指数表示也可以。注意:由于小数常量的默认类型为double型,所以float类型的后面一定要加f(F),用以区分。初始化和赋值时除了支持一般的小数的写法外,也支持科学记数法。如以下例子都是可以的。

float a=2.4f;

float b=2e3f,

double c=3.6d;

double d=3.44;

float e=5.022e+23f

上面这些定义都是合法的。

三、布尔类型

布尔类型比较特殊,它的值只有两种:true和false。布尔类型一般用于条件判断。与C语言不同,C语言可使用整数0表示false,而非0表示true,但是在java中不可以这样,表示布尔型只能使用true和false,例子如下:

boolean flag=true;

boolean f=false;

四、字符常量

字符常量是由英文字母、数字、转义序列、特殊字符等的字符所表示,它的值就是字符本身,在java中使用单引号“’”表示,每个字符占用两个字节。如:

'a'  '8' ' ' 'u0027'

可以使用全球统一编码(Unicode),码值加上u来表示对应的字符, 采用Unicode的目的是为了覆盖全球各种各种语言使用的不同的语言标记,分为UTF-8和UTF-16。

五、字符串常量

字符串是自然界描述信息很常用的一种形式,因此使用非常频繁。Java中使用用双引号括起来进行标示,如:

"Hello World"

"123"

"Welcome XXX"

 使用字符串时需要注意,我们存储信息时会带上一些特殊的方便人类阅读的格式标记,比如回车换行显示、或者直接想标示一个双引号,这是就需要使用转义字符的机制来实现,因此转义字符的目的是在字符串中标示一些特殊的标记信息,格式使用一个开头,形如:

表示接受键盘输入,相当于按下了回车键;

表示换行;

表示制表符,相当于tab键;

表示退格键,相当于Back Space;

'表示单引号,"是双引号;

表示一个斜杠“”。

比如上面的"Welcome XXX",它的运行结果是:

Welcome

XXX

六、特殊的null值

null字面量:用null表示,表示为空,注意在逻辑上来说:0不是空。null值在定义对象赋初值时使用。

七、变量的作用域变量的分类

与C语言不同,java的所有的变量都必须在类中声明,不允许有变量不在类中声明的,当然变量也是是有具体的使用范围的,这种范围就是变量的作用域。声明在class的根语句块的变量是具有全局作用域,就是在本程序内部任意位置都访问得到,被称作全局变量。局部变量会覆盖全局变量。如下面这个例子:

  
public class MyTest {
	int i = 100;

	public void test() {
		System.out.println(+i);
		i = 50;
		System.out.println(+i);
	}

	public static void main(String[] args) {
		MyTest tt =new MyTest();
		tt.test();
	}

}

我们声明了一个全局变量i,这个变量i的作用域在整个类中都可以访问,然后我们定义了一个普通方法test,在这个方法体中,我们也可以访问全局变量i,但是如果我在这个方法里也声明了一个同名的变量i,也就是局部变量,那么局部变量i会覆盖覆盖全局变量i,所以第一个i输出的是100,而第二个i输出的时50,你可以在main方法中调用这个方法测试一下。

八、常量

常量就是在程序运行中不变的值,使用final关键字进行声明。

final double rate = 3.1415926;

在java中也可以用public static final修饰一个自定义字面量,或者使用枚举类型也可以表示一组字面量,枚举类型我们后面章节讨论。final关键字和public关键字我们也会在后面再讲解

   
 public static final String ONEEDUNAME="javadayup天天向上";//定义一个字符串常量