运算符,关键字,保留字,变量

逻辑运算符

&-逻辑与 &&-短路与 |-逻辑或 ||-短路或 !-逻辑非 ^-逻辑异或
&与%&&的区别:
  • 单&时,左边无论真假,右边都进行运算;
  • 双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。
  • “|”和“||”的区别同理,||表示:当左边为真,右边不参与运算

位运算符

运算符运算范例
<<左移3<<2 =12
>>右移3>>1=1
>>>无符号右移3>>>1=1
&与运算6&3=2
|或运算6|3=7
^异或运算6^3=5
~取反运算~6=-7
位运算是直接对整数的二进制进行的运算

关键字与保留字

关键字

  • 定义:被Java语言赋予了特殊含义,用做专门用途的字符串(单词)

特点:关键字中所有字母都为小写

用于定义数据类型的关键字

​ class | interface | enum | byte | short | int | long | float | double | char | boolean | void

boolean类型数据只允许取值true和false,无null

boolean类型不可以转换为其它的数据类型。

​ 用于定义流程控制的关键字

​ if | else | switch | case | default | while | do | for | break | continue | return

​ 用于定义访问权限修饰符的关键字

​ private | protected | public

​ 用于定义类,函数,变量修饰符的关键字

​ abstract | final | static | synchronized

​ 用于定义类与类之间关系的关键字

​ extends | implements

​ 用于定义建立实例及引用实例,判断实例的关键字

​ new | this | super | instanceof

​ 用于定义建立实例及引用实例,判断实例的关键字

​ new | this | super | instanceof

​ 用于包的关键字

​ package | import

​ 其他修饰符关键字

​ native | strictfp | transient | volatile | assert

​ 用于定义数据类型值的字面值

​ true | false | null

保留字

Java保留字:现有Java版本尚未使用,但以后版本可能会作为关键字使 用。自己命名标识符时要避免使用这些保留字 goto 、const

标识符

标识符

  • Java 对各种变量、方法和类等要素命名时使用的字符序列称为标识符

  • 技巧:凡是自己可以起名字的地方都叫标识符。

规则

  • 由26个英文字母大小写,0-9 ,_或 $ 组成

  • 数字不可以开头。

  • 不可以使用关键字和保留字,但能包含关键字和保留字。

  • Java中严格区分大小写,长度无限制。

  • 标识符不能包含空格。

命名规范

  • 包名:多单词组成时所有字母都小写:xxxyyyzzz
  • 类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz
  • 变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个 单词首字母大写:xxxYyyZzz
  • 常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ

变量

概念

内存中的一个存储区域,且该区域的数据可以变化,是最基本的存储单元,用于在内存中保存数据

分类

基本数据类型
  1. 数值型:

    • 整数型(byte,short,int,long)
    • 浮点型(float,double)

    2.字符型(char)

    3.布尔型(boolean)

引用数据类型
  1. 类(class)(其中字符串类型就属于此类型)
  2. 接口(interface)
  3. 数组([])
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
注释   • 单行注释 用双斜线 ”//” 表示   • 多行注释 用 /*------------------*/ 表示   • 文档注释 用 /**-----------------*/ 表示 文档注释与javadoc   •文档注释还可以通过javadoc 命令来生成API文档   •格式: javadoc –d apidoc 源文件名     –其中-d path指定存放API文档的路径。   •API 文档包括三个区域分别是:包区域,类区域,详细说明区域 注: 如果要出现包区域,要让不同类处于不同的包下面才会出现包区域。 标识符和关键字   •分隔符:常见的分隔符有分号; 花括号{} 方括号[ ] 圆括号() 空格 圆点 .     –在 Java 语言中每一条语句的结束用分号表示;   •标识符的规则:由字母,数字,下划线_,美元$组成,但数字不能开头.   •标识符不能是java关键字保留字,但中间可以包含标识符,不能包含空格。   •Java关键字加上goto const true false null 一共有53个关键字保留字,都不能作为Java的标识符。 标识符举例 –abc_xyz √ –HelloWorld √ –abc$ √ –$中文 √ –_abc 对 √ –xyz#abc × –abc1 √ –1abc × 数据类型的分类   •Java语言是一个强类型语言。     –所有变量,必须先声明类型,再使用。     –指定类型的变量,只能装对应的类型的数据。什么样的瓶子装什么样的酒。   •Java 语言支持的类型分为两大类: 基本数据类型和引用类型     –基本数据类型包括八大数据类型。     –引用类型包括数组、类、接口。 变量   •变量就是用来记录数据的。   •计算机内存里数据就需要通过变量来访问它。   •通俗一点,你可以把变量理解成容器,它可以装数据。 使用Scanner获取键盘输入   •使用Scanner类可以很方面地获取用户的键盘输入,Scanner是一个基于正则表达式的文本扫描器,它可以从文 件、输入流、字符串中解析出基本类型值和字符串值。Scanner类提供了多个构造器,不同的构造器可接受文件、输 入流、字符串作为数据源,用于从文件、输入流、字符串中解析数据。   •Scanner主要提供了两个方法来扫描输入:     –hasNextXxx():是否还有下一个输入项,其中Xxx可以是Int、Long等代表基本数据类型的字符串。如果 需要判断是否包含下一个字符串,则可以省略Xxx。     –nextXxx():获取下一个输入项。Xxx的含义与前一个方法中Xxx相同。 基本数据类型   •Java 的基本数据类型可以分为两大类: boolean 类型 和 数值类型.   •而数值类型又可以分为整型和浮点型     –整型包括:byte short int long(广义的整型包括char型)     –在内存中各占:1,2,4,8个字节, 各有各的取值范围,略记一下。   •在定义long 类型时 必须在数字后面加L,   •整数常量有三种表示方式: 十进制,八进制(以0开头),十六进制(以0x开头), 二进制(以OB开头—jdk1.7)   •在java 语言中,运算过程中,整型类型默认为 int 类型   •什么样的类型的变量 只能存放什么样类型的值 浮点型   •浮点型 包括 : float 和 double 型 两种。他们分别占有4个字节和8个字节,但他们远远比int 和 long 的 4 和 8 个字节大的多   •Java 语言的浮点数有两种表示方式:十进制数形式,浮点数必须包含小数,否则系统将认为是一个int 型 如: 8.0 不能省略为: 8   •科学计数法形式:     –注: 只有浮点数才有科学计数法,,   •Java 语言的浮点数默认是double 型,,如果要表示float 型 必须在数字后面加 f(如:1.3f),   •Java 的三个特殊的浮点数值:正无穷大,负无穷大和非数   •所有的正无穷大都是相等,负无穷大都是相等,,而非数不与任何数值相等,与自己也不相等,只有浮点数除0 才可以 得到这三个数,整数除0将报错;
编译原理作业。 实验:词法分析 一、实验目的:编制一个读单词过程,从输入的源程序中,识别出各个具有独立意义的单词,即基本保留字、标识符、常数、运算符、分隔符五大类。并依次输出各个单词的内部编码及单词符号自身值。(遇到错误时可显示“Error”,然后跳过错误部分继续显示) 二、估计实验时间:1.课余准备15小时;2.上机二次4小时;3.完成实验报告5小时。 三、实验过程和指导: (一)准备:1.阅读课本有关章节,花一周时间明确语言的语法,写出基本保留字、标识符、常数、运算符、分隔符和程序例。2.初步编制好程序。3.准备好多组测试数据。 (二)上课上机:将源代码拷贝到机上调试,发现错误,再修改完善。第二次上机调试通过。 (三)程序要求: 程序输入/输出示例: 如源程序为C语言。输入如下一段: main() { int a,b; a = 10; b = a + 20; } 要求输出如右图。 要求: 识别保留字:if、int、for、while、do、return、break、continue 其他的都识别为标识符; 常数为无符号整形数; 运算符包括:+、-、*、/、=、>、=、<=、!= 分隔符包括:,、;、{、}、(、) 以上为参考,具体可自行增删。 保留字为1 标识符为2 数字为3 运算符为4 分割府为5 程序思路(仅供参考): 0.定义部分:定义常量、变量、数据结构。 1.初始化:从文件将源程序全部输入到字符缓冲区中。 2.取单词前:去掉多余空白。 3.取单词后:去掉多余空白(可选,看着办)。 4.取单词:读出单词的每一个字符,组成单词,分析类型。(关键是如何判断取单词结束?取到的单词是什么类型的单词?) 5.显示结果。 (四)练习该实验的目的和思路: 程序开始变得复杂起来,可能是大家以前编过的程序中最复杂的,但相对于以后的程序来说还是简单的。因此要认真把握这个过渡期的练习。程序规模大概为200行。本实验和以后的实验相关。通过练习,掌握对字符进行灵活处理的方法。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值