黑马程序员——Java基础语法(一)—关键字、标识符、数据类型、运算符

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------

一、关键字
  1、含义:Java赋予了特殊含义的单词。
  2、特点:Java语言中的所有关键字都是英文小写。
  3、注意事项:goto和const作为保留字(在JDK的新版本中可能提升为关键字)存在。没有被使用。


二、标识符
  1、含义:其实就是在程序中自定义的名词。比如类名,变量名,函数名。
  2、组成规则:由数字0-9,英文大小写字母,$以及_组成。
  3、注意:
    1)数字不可以开头。
    2)不可以使用关键字。
  4、常用的命名规则:见名知意,驼峰命名
    1)包(文件夹,用于区分同名的类)全部小写。如果多级包,用.分开。
    2)类和接口:a.如果是一个单词,首字母大写。
b.如果是多个单词,每个单词的首字母大写。大驼峰式
     3)变量和方法名:
a.如果是一个单词,首字母小写。
b.如果是多个单词,从第二个单词开始每个单词的首字母大写。小驼峰式
      4)常量:全部大写,如果多个单词组成,用_连接。

三、注释
  1、就是对程序的解释性文字。
  2、注释的分类:
1)单行注释
a:以//开头,以回车结束。
b:单行注释是可以嵌套的。
2)多行注释
a:以/*开头,以*/结束。
b:多行注释是不可以嵌套的。
3)文档注释(了解) 将来被javadoc工具解析,生成一个说明书。
  3、注释的作用:
1)解释程序,提高程序的阅读性。
2)可以调试错误。


四、常量
  1、在程序的运行过程中,其值是不可以发生改变的量。
  2、常量的分类:
1)字面值常量
a:整数常量
12,-23
b:实数(这里专指小数)常量
12.5,-65.43
c:字符常量
'a','A','0'
d:字符串常量
"hello"
e:布尔常量
true,false
d:空常量(后面讲,不是类型,是一个数值)
null
2)自定义常量
  3、常量可以直接被输出。


五、进制
  1、是一种进位的方式。X进制,表示逢x进1。
  2、Java中整数常量的表示
int a = 15;
int a = 0b1111;
int a = 017;
int a = 0xF;
  1)二进制 由0,1组成。以0b开头。JDK7以后的新特性。
2)八进制 由0-7组成。以0开头。
3)十进制 由0-9组成。默认就是十进制。
4)十六进制 由0-9,A-F(不区分大小写)组成,以0x开头。
  3、进制转换:
1)其他进制到十进制
系数:就是每一位上的数据。
基数:X进制,基数就是X。
权:在右边,从0开始编号,对应位上的编号即为该位的权。
结果:把系数*基数的权次幂相加即可。

二进制:1011
十进制:
八进制:74
十进制:
十六进制:a3
十进制:
2)十进制到其他进制
除基取余,直到商为0,余数反转。

十进制:60
结果:
二进制
八进制
十六进制


3)快速转换
a:8421码。
b:二进制--八进制(3位组合)
c:二进制--十六进制(4位组合)


六、变量
1)程序的运行过程中,在指定范围内发生改变的量。
2)格式:
数据类型 变量名 = 初始化值;

变量的定义格式:
数据类型 变量名;
变量名 = 初始化值;
数据类型 变量名 = 初始化值;
数据类型 变量1,变量2,变量3=10;

举例:
方式1: byte b = 10;


方式2: byte b;
b = 10;

七、数据类型
1)分类
基本类型:4类8种。
引用类型:类,接口,数组。(了解)
2)基本类型
整型:
byte 1
short 2
int 4
long 8
浮点型:
float 4
double 8
字符型:
char 2
布尔型:
boolean 不明确。可以认为是1个字节。

注意:
整数默认是int类型。long类型需要加L或者l后缀。
浮点数默认是double类型。float类型需要加F或者f后缀。
3)类型转换
A:boolean类型不参与转换。
B:隐式转换(从小到大)
byte,short,char -- int -- long -- float -- double
C:强制转换(从大到小)
格式:
(数据类型)数据;
4)面试题
byte b1 = 3;
byte b2 = 4;
byte b3 = b1 + b2;
byte b4 = 3 + 4;


八、运算符
1)就是把常量和变量连接的符号,一般参与运算使用。
2)分类:
算术运算符
赋值运算符
关系运算符
逻辑运算符
位运算符
三元运算符


3)算术运算符
+,-,*,/,%,++,--

+:正号,加法,字符串连接符。
System.out.println("5+5="+5+5);//5+5=55
System.out.println(5+5+"=5+5");//10=5+5


%:取得余数
左边如果大于右边,结果是余数。
左边如果小于右边,结果是左边。
左边如果等于右边,结果是0。

正负号跟左边一致。

++/--:
++ 其实相当于把数据+1


单独使用:
在数据的前后,结果一致。

参与操作使用:
如果在数据的后边,数据先操作,在++/--
如果在数据的前边,数据先++/--,再操作。


4)赋值运算符
=,+=,-=,*=,/=,%=


int a = 10;
把10赋值给int类型的变量a。


a += 20;
把左边和右边的和赋值给左边。


注意事项:
a = a + 20;
a += 20;
结果是等价的,理解不是等价的。


因为+=这种运算符,内含了强制类型转换功能。
比如:
short s = 2;


s+=3;
等价于
s = (short)(s+3);



-------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实验一:词法分析 一、实验目的 通过设计一个具体的词法分析程序,加深对词法分析原理的理解。并掌握在对程序设计语言源程序进行扫描过程中将其分解为各类单词的词法分析方法。 编制一个读单词过程,从输入的源程序中,识别出各个具有独立意义的单词,即基本保留字、标识符、常数、运算符、分隔符五大类。并依次输出各个单词的内部编码及单词符号自身值。 二、实验预习提示 1、 词法分析器的功能和输出格式 词法分析器的功能是输入源程序,输出单词符号。词法分析器的单词符号常常表示成以下的二元式(单词种别码,单词符号的属性值)。本实验中,采用的是一类符号对应一个种别码的方式。 2、 单词的BNF表示 ----> ----> ----> + ----> - 等等 3、 模块结构(见课本P95-96)(可根据自己的理解适当修改) 三、实验过程和指导: (一) 准备: 1. 阅读课本有关章节,明确语言的语法,写出基本保留字、标识符、常数、运算符、分隔符和程序例。 2. 初步编制好程序。 3. 准备好多组测试数据。 (二) 上机: (三) 程序要求: 1. 要求用C++Builder或者Dephi或者VC、VB等可视化编程工具编写;要求有界面(即一般windows下应用程序界面)。 2. 输入为某语言源代码。 程序输入/输出示例: 如源程序为C语言。输入如下一段: main() { int a,b; a=10; b=a+20; } 要求输出如下(并以文件形式输出)。 (2,”main”) (5,”(“) (5,”)“) (5,”{“} (1,”int”) (2,”a”) (5,”,”) (2,”b”) (5,”;”) (2,”a”) (4,”=”) (3,”10”) (5,”;”) (2,”b”) (4,”=”) (2,”a”) (4,”+”) (3,”20”) (5,”;”) (5,”}“) 注:为右大括号 要求(可根据实际情况加以扩充和修改): 识别保留字:if、int、for、while、do、return、break、continue等等,单词种别码为1。 其他的标识符,单词种别码为2。 常数为无符号数,单词种别码为3。 运算符包括:+、-、*、/、=、>、=、<=、!= ;单词种别码为4。 分隔符包括: “,”“;”“(”“)”“{”“}”等等, 单词种别码为5。 (四) 程序思路(仅供参考): 0. 定义部分:定义常量、变量、数据结构。 1. 初始化:从文件将源程序输入到字符缓冲区中。 2. 取单词前:去掉多余空白。调用过程GETNB(); 3. 提取字符组成单词,利用课本P97图4.5转换图构造单词扫描过程SCAN(),需要根据实际情况加以修改。 4. 判断单词的种别码,调用过程LOOKUP(); 5. 显示(导出)结果。
Java关键字: abstract、assert、boolean、break、byte、case、catch、char、class、const、continue、default、do、double、else、enum、extends、final、finally、float、for、goto、if、implements、import、instanceof、int、interface、long、native、new、package、private、protected、public、return、short、static、strictfp、super、switch、synchronized、this、throw、throws、transient、try、void、volatile、while Java标识符标识符Java程序中指定名称的组件,如变量名、方法名、类名等。标识符必须以字母、下划线或美元符号开头,不能以数字开头,只能包含字母、数字、下划线或美元符号。 Java变量: Java变量是存储数据的容器,可以存储不同类型的数据,如int、double、String等。变量需要先声明,再进行赋值操作。Java中的变量可以被分类为:局部变量、成员变量和静态变量。 Java运算符Java运算符包括算术运算符、比较运算符、逻辑运算符、条件运算符、位运算符等。算术运算符包括加(+)、减(-)、乘(*)、除(/)、取余(%)等;比较运算符包括大于(>)、小于(<)、等于(==)、不等于(!=)、大于等于(>=)、小于等于(<=)等;逻辑运算符包括与(&&)、或(||)、非(!)等;条件运算符包括三目运算符(?:)等;位运算符包括按位与(&)、按位或(|)、按位异或(^)等。 Java流程控制: Java流程控制指的是在程序中控制程序执行的顺序和次数。Java流程控制包括分支语句和循环语句。分支语句包括if语句、switch语句等;循环语句包括for循环、while循环、do-while循环等。还有特殊的流程控制语句,如break语句、continue语句等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值