02.java 标示符、变量、常量

java 标示符、变量、常量

2.1 java是严格区分大小写
2.2 java标示符

Java中的包、类、方法、参数和变量的名字,可由任意顺序的大小写字母、数字、下划线(_)和美元符号($)组成,但标识符不能以数字开头,不能是关键字。

下面是合法的标识符:

indentifier,

username

user_name

_userName

$username 

下面是非法的标识符:

class

98.3

Hello World

建议:标示符永远用字母开头,尽量不要包含其他的符号就行了。

2.3 java中关键字

java和C、C++等其他语言一样也存在关键字,如:public、break等,这些保留字不能被当做标示符来识别,下面是常见的一些关键字:

abstract    boolean      break      byte       case      catch     char  

class       continue     default    do         double    else      extend

false       final        finally    float      for       if        implement

import      instanceof   int        interface  long      native    new

null        package      private    protected  public    return    short

static      strictfp     super      switch     this      throw     throws

transient   true         try        void       volatile  while     synchronized

注意:Java 没有sizeof、goto、const这些关键字,但不能用goto、const作为变量名。

2.4 常量

程序执行过程中,值保持不变的量

1、整形常量

  整型常量可以分为十进制,十六进制和八进制来表示:

2、浮点型常量

  浮点数常量有float(32位)和double(64位)两种类型,分别叫做单精度浮点数和双精度浮点数,表示浮点数时,要在后面加上f(F)或者d(D),用指数表示也可以。 注意:由于小数常量的默认类型为double型,所以float类型的后面一定要加f(F),用以区分。如:

2e3f  3.6d

.4f    0f 

3.84d  5.022e+23f

  都是合法的。

3、布尔常量:

  布尔常量用于区分一个事物的正反两面,不是真就是假。其值只有两种:true和false。

4、字符常量:

  字符常量是由英文字母、数字、转义序列、特殊字符等的字符所表示,它的值就是字符本身。

5、字符串常量:

  符串常量和字符型常量的区别就是:前者是用双引号括起来的常量,用于表示一连串的字符。

  

2.5 变量

程序执行过程中,值可以改变的量

    整型变量、实型变量、字符型变量、字符串变量、布尔变量等

java 的四类八型:


 

其中四种数据类型用来存储整数,它们具有不同的取值范围,分别如图所示:


 

这些类型都是有符号的,所有整数变量都无法可靠地存储其取值范围以外的数据值,因此定义数据类型时一定要谨慎。

其中有两种数据类型用来存储浮点数,它们是单精度浮点型(float)和双精度浮点型(double)。


 

2.6 java的一些转义字符

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

\n表示换行;

\t表示制表符,相当于table键;

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

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

\\表示一个斜杠“\”。

2.7 基本数据之间的转换

在编写程序过程中,我们经常会遇到的一种情况,就是需要将一种数据类型的值赋给另一种不同数据类型的变量,由于数据类型有差异,在赋值时就需要进行数据类型的转换,这里就涉及到两个关于数据转换的概念:自动类型转换和强制类型转换。

自动类型转换(也叫隐式类型转换)

要实现自动类型转换,需要同时满足两个条件,第一是两种类型彼此兼容,第二是目标类型的取值范围要大于源类型。例如,当byte型向int型转换时,由于int型取值范围大于byte型,就会发生自动转换。所有的数字类型,包括整型和浮点型彼此都可以进行这样的转换。

请看下面的例子:

byte b=3;

int x=b;  //没有问题,程序把b的结果自动转换成了int型了

◆ 强制类型转换(也叫显式类型转换)

当两种类型彼此不兼容,或目标类型取值范围小于源类型时,自动转换无法进行,这时就需要进行强制类型转换。强制类型转换的通用格式如下:

目标类型 变量=(目标类型)值

例如:

byte a;

int b;

a = (byte) b;

类型的自动提升,Java定义了若干适用于表达式的类型提升规则。

第一,所有的byte型、short型和char的值将被提升到int型。

第二,如果一个操作数是long型,计算结果就是long型;

第三,如果一个操作数是float型,计算结果就是float型;

    第四,如果一个操作数是double型,计算结果就是double型。

java实例:

//类型的自动提升
	public class Promote {
		public static void main(String args[]){
			byte b = 50;
			char c = 'a';
			short s = 1024;
			int i = 50000;
			float f = 5.67f;
			double d = .1234;
			double result = (f * b) + (i / c) - (d * s);
			System.out.println((f * b) + " + " + (i / c) + " - " + (d * s));
			System.out.println("result = " + result);
		}
	}
 

猜你喜欢

转载自johnnycmj.iteye.com/blog/1555394