变量和运算符

什么是关键字

关键字是对编译器有特殊意义的单词。

关键字说明:
  • 不同的关键字单词可以用来表示一种数据类型,或者表示程序的结构等。
  • 关键字不能用作变量名,方法名,类名,包名
  • goto是java的保留关键字,意思是java并没有使用goto,以后是否使用未定。



标识符

Java中的包,类,方法,参数和变量的名称总称为标识符。
命名规则:

  • 必须以字母,下划线(_)或美元符号($)开头;
  • 余下的字符可以是数字,字母,下划线,美元符号,长度不限;
  • 标识符中不能有空格
  • 不能使用java中的关键字或保留字作为标识符。

命名规范:
Pascal规则:组成标识符的每个单词的首字母大写,其余字母小写的书写规定。对于缩写的双字母单词,要求全部大写。
Camel规则:标志符的首字母小写,每个后面连接的单词的首字母大写,其余字母小写的书写约定。对于缩写的双字母单词,要求它们出现在标识符首部时,全部小写,否则全部大写。

元素 规范
类名 Pascal规则
变量名 Camel规则
方法名 Camel规则
包名 全部小写
常量名 全部大写

常量

  • 指程序中持续不变的值,在整个程序运行过程中它时不可改变的
  • 必须指定数据类型
    Java7以后版本特性
    数值常量增加对下划线支持
    注:不能在小数后面,或者数字的开始和结束的地方放下划线。

变量

概念:

  • 指在程序的运行过程中随时可以发生变化的量
  • 是程序中数据的临时存放场所
    保存程序运行时数据输入的数据
    特定的运算结果等
    变量声明
    格式:变量类型 变量名 [=变量初值];

数据类型

分为基本数据类型(4类8种基本数据类型)和引用数据类型。
基本类型:

  • 数值型:
    整数类型:byte short int long
    浮点类型:float double
  • 字符型:char
  • 布尔型:boolean
    引用数据类型:
    类 接口 数组
整数类型

byte,short,int(默认),long
不同进制整数的表现形式

  • 十进制:0~9
    注:第一位不能是0
  • 十六进制:0~9 A~F
    注:必须以0x或0X开头
  • 八进制:0~7
    注:必须以0开头
  • 二进制:0~1
    JDK7以前版本,没有二进制的整形常量写法,一般用十六进制答题
    注:JDK7以后版本,必须以0b或0B开头



    注:声明long型后面需加上小写字母l或L,否则会出错。

浮点数类型

float,double(默认)



两种表示形式:

  • 十进制:例如3.14 ,314.0 , .314
  • 科学计数法形式: 3.14e2 ,
    3.14E-1
    注:浮点型常量默认double型,如要声明float类型的数据,须在数字末尾加f或F,否则会报错。
字符类型

char

  • 通常用英文单引号括起来,代表单个字符
  • 字符类型长度:16位,是一个16位无符号整数。
  • 字符通常为:英文字母,中文字,其他国家文字,数字,转义序列,特殊字符,例如:
    ‘a’ 字母a,‘中’ 汉字中
  • java中的字符也可用十六进制编码形式表示,例如:
    ‘0x4e2d’ 汉字中,‘0x0041’ 英文字母 A,‘\u03A6’ unicode字符表示希腊字符Φ
  • 转义字符:使用“\”把其转化为字符的本身输出,那么使用“\”的字符称作转义字符。
布尔类型

boolean

  • 适于逻辑运算,一般用于表示真或假
  • 只有两个值:true和false
  • 布尔型长度没有给出具体的占用字节数。
    编译后用int数据类型代替,boolean数组会编译成byte数组,每个boolean元素占8位。

运算符(操作符)

  • 是一种特殊的符号,用以表示数据的运算,赋值和比较。
  • 运算符的种类
    赋值运算符:=,+=,-=,=,/=,%=
    算术运算符:+,-,
    ,/,%,++,--
    比较运算符:>,<,>=,<=,==,!=,instanceof
    逻辑运算符:&,|,^,~,>>,<<,>>>
    条件运算符:?:
    注:条件运算符是用三个操作数组成的三元运算符
    赋值运算符

    算术运算符
  • 操作数必须是数值类型
  • 分为一元运算符和二元运算符
    一元运算符:只有一个操作数,
    正‘+’,负‘-’,自增‘++’,自减‘--’
    二元运算符有两个操作符,运算符在两个操作数之间。
    加‘+’,减‘-’,乘‘*’,除‘/’,求余‘%’
    注:乘除,求余优先于加减



    关系运算符(比较运算符)



    逻辑运算符(布尔运算符)

    位运算
  • 只对byte,short,char,int,long有效


逻辑运算符和位运算符的区别

相同点:都能参与逻辑运算,按位与或完全可以代替逻辑与或;
区别:按位与或可以参与位运算,逻辑与或只能参与逻辑运算,逻辑与或可以短路,按位与或不能短路

三元运算符
语法:表达式1?表达式2:表达式3
当表达式1为true时,就为第二个表达式,否则第三个表达式

运算符的优先级

  • 按操作数多少划分:
    一元>二元>三元
  • 按运算类型划分:
    算术运算符>关系运算符>逻辑运算符>赋值运算符
  • 尽量多的使用括号
    括号优先级最高


数据类型转换

两种数据类型的转换方式
1.自动类型转换:(隐式类型转换)
满足两个条件

  • 两种类型彼此兼容
  • 目标类型的取值范围要大于源类型

自动类型转换规则:

  • 布尔类型不可以转换为其他的数据类型
  • 整型,字符型,浮点型的数据在混合运算中相互转换,转换时遵守以下规则:


byte,short,char之间不会相互转换,他们三者在计算时首先会转换为int类型

2.强制类型转换(显示类型转换)

  • 当两种类型彼此不兼容,或目标类型取值范围小于源类型
    大范围的转小范围的
    转换语法格式:
    变量=(目标类型)值
    注:在强制类型转换过程中,源类型的值可能大于目标类型,因此可能造成精度降低或溢出,使用时需注意
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容