一、JAVA语法基础

1.标识符

可以简单的理解为一个名字。在Java中,我们需要标识代码的很多元素,包括类名、方法、字段、变量、包名等。我们选择的名称就称为标识符,并且遵循以下规则:

1.     标识符可以由字母、数字、下划线(_)、美元符($)组成,但不能包含 @、%、空格等其它特殊字符。

2.      不能以数字开头。比如123name不合法。

3.      标识符是严格区分大小写的。tto和ttO两个不同的标识符。

4.     标识符的命名最好能反映出其作用,做到见名知意。

5.标识符不能是java的关键字。

2.关键字

在java语言中已经被赋予特定意义的一些单词。一共有53个关键字。

其中有两个保留字:const和goto

关键字不能被用作标识符!!

Java标识符的定义与规则 java标识符的语法规则_servlet

 3.注释

Java代码的解释说明。不影响程序的运行,用于辅助读程。

//单行注释

/*    多行注释   */

/**     文档注释     */

4.变量

在JAVA中,有的数据值是不固定的,总在变,我们还需要记录这些值,我们可以把这些值理解为变量。

我们通过三个元素来描述变量:变量类型,变量名以及变量值。

int age=18;   //声明int类型的变量并赋值

String tel;  //声明String类型的变量

注意:

1、 变量名必须是一个有效的标识符。

2、 变量名不可以使用java关键字

3、 变量名不能重复

5.常量

在程序运行过程中一致不会改变的量成为常量。

6.ASCII码表

中国gb2312(字少)

gbk(识别4万+汉字)

万国码表unicode(ISO制定)

所有码表都兼容ASCII(ASCII码字符对照表自行百度)

二、数据类型

2.1基本类型(八种)和引用类型(后面讲)

位bit,来自英文bit,音译为“比特”,表示二进制位。

1Byte=8Bits(1字节=8位)

1KB=1024Bytes  1MB=1024KB  1GB=1024MB

Java标识符的定义与规则 java标识符的语法规则_标识符_02

 2.1.1练习

1.测试打印个人信息:java架构师某某今年20岁,月薪100000.99,感慨java是世界上最好的语言.

Java标识符的定义与规则 java标识符的语法规则_标识符_03

 2.查看对应类型的最大值与最小值

Java标识符的定义与规则 java标识符的语法规则_Java标识符的定义与规则_04

Java标识符的定义与规则 java标识符的语法规则_开发语言_05

 3.求圆的面积

Java标识符的定义与规则 java标识符的语法规则_标识符_06

 4.完成值交换案例:接收用户输入的两个整形数据,并交换他们的值。

Java标识符的定义与规则 java标识符的语法规则_servlet_07

Java标识符的定义与规则 java标识符的语法规则_标识符_08

2.2基本类型的字面值

2.2.1     整数字面值是int类型

int a = 999999999;//错,右侧是int类型,但是超出范围

2.2.2     byte,short,char三种比int小的整数可以用范围内的值直接赋值

byte b=127;//对

byte b=128;//错,右面已经超过byte范围是int类型的数据

2.2.3     浮点数的字面值是double类型

double  a=3.14;//对

float a=3.14;//错,右面是double,float是四字节double是八字节存不下

2.2.4     字面值后缀l f d

L –long   如:long a = 99999999999;//错,超出范围,解决方案加L

F –float   如:float a = 3.14;//错,右面是double类型,解决方案加F

D –double  如:double a=3;//错,右面是int,解决方案加D或者改成3.0

2.2.5     进制前缀

0x   - 16进制

0    -8进制

\u   -char类型,16进制

2.3基本类型的类型转换

2.3.1     小到大(隐式转换)

Byte a =120;

Int b=a;//直接转

2.3.2     大到小(显式转换)

需要强制类型转换

int xx

byte y=(byte) xx;

浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入

float f=32.7f;int a=(int)f;//打印的结果是32。

不能对Boolean类型进行类型转换。

注意:小数转成整数,小数直接舍弃

口诀:

小到大,直接转。大到小,强制转。浮变整,小数没。

Java标识符的定义与规则 java标识符的语法规则_标识符_09

2.4运算规则

2.4.1     计算结果的数据类型,与最大类型一致

3/2   得1 ,而不是1.5,结果是int类型

3d/2  得1.5,相当于double/int,结果是double类型

2.4.2     byte,short,char三种比int小的整数,运算时会先自动转换成int

byte a=3;

byte b=4;

byte c=a+b;//错,运行时,byte会先自动转成int再运算,int+int还是int

2.4.3     整数运算溢出

整数运算,类似于一个中标,转到最大时,再转会回到最小。

计算:光速运行一年的长度是多少米

System.out.println(300000000*60*60*24*365);

System.out.println(300000000l*60*60*24*365);

2.4.4     浮点数运算不精确

java提供了解决方案,后面就会讲到。

System.out.println(1-0.8);

System.out.println(4.35*100);

2.4.5     浮点数的特殊值

Infinity 无穷大  3.14/0 

Nan  not a number  0/0.0

2.5.5char型变量中能不能存储一个中文汉字,为什么

char 类型可以存储一个中文汉字,因为 Java 中使用的编码是 Unicode(不选择任何特定的编码,直接使用字符在字符集中的编号,这是统一的唯一方法),一个 char 类型占 2 个字节(16 比特),所以放一个中文是没问题的。