注释:解释说明的文字,对代码进行解释说明,不会被编译
单行注释---作用域: 作用于当前行
嵌套: 可以嵌套单行注释,不可以嵌套多行注释和文档注释
颜色: 绿色
位置: 行的上面,或者行尾
多行注释---作用域:多行内有效
嵌套: 可以嵌套单行注释,不可以嵌套多行注释和文档注释
颜色: 绿色
位置: 类的上面或者方法的上面
文档注释---作用域:多行内有效
嵌套: 可以嵌套单行注释,不可以嵌套多行注释和文档注释
颜色: 蓝色
位置: 类的上面或者方法的上面
标识符:java中一切起名字的地方都是标识符
规则---1.只能由数字,字母,下划线,美元符号$任意组合而成,但是数字不能开头
2.标识符是严格区分大小写
3.关键字不能作为标识符使用
命名规范---1.见名之意
2.驼峰命名
包: 全部小写 shangxuetang
多级包:每个级别之间使用.进行分隔 shang.xue.tang
类|接口: 每个单词首字母大写 ShangXueTang
方法|变量: 第一个单词全部小写,第二个单词开始首字母大写 shangXueTang
常量: 全部大写 SHANGXUETANG
变量:在程序运行过程中,其值可以发生改变的量,在内存中开辟一块空间,存储指定类型的数据
java是一个强类型的语言 :声明变量的时候就要先确定类型
语法:
1.声明的同时赋值
数据类型 变量名 = 赋值;
常用的数据类型: int整数 double小数 String字符串"" boolean布尔类型 char字符型‘‘
2.先声明 后赋值
数据类型 变量名; --声明
变量名=赋值; --赋值
3.同时声明多个变量
=是java中唯一一个自右向左运算的符号
4.变量关注的点:
1.数据类型
2.变量名(标识符的规则|规范)
3.值
4.作用域 {}
5.使用变量时需要注意的问题(1.输出 2.赋值 3.运算):
1.变量必须已声明
2.变量必须已赋值
6.变量的分类:
成员变量|实例变量 :只声明不赋值存在默认值
int->0 double->0.0 字符串->null char->‘ ‘ boolean->false
类中方法外|语句块外定义的变量
局部变量: 使用前必须声明并且赋值
方法中语句块中定义的变量就是局部变量
常量:在程序运行过程中其值不能发生改变的量
分类:1.字面值常量
整数常量: 1 123 -7
小数常量: 0.34 -0.5 3.4
布尔常量: false true
字符常量: ‘a‘ ‘1‘ ‘好‘ ‘~‘
字符串常量: "abc" "哈哈" "123"
2.自定义常量
被final修饰的变量为常量
数据类型:四类八种
基本数据类型
整型
表示形式 表示名称 范围 大小
byte 字节型 [-128,127] 1字节 8bit
short 短整型 [-32768,32767] +-3万 2字节 16bit
int 整型 +-21亿 4字节 32位
long 长整型 非常大 8字节
整数字面常量值默认是int类型的,如果给byte,short赋值,只要在其范围内的字面常量值都能成功赋值,给long赋值,需要在数据的后面添加l/L,推荐使用L
浮点型
表示形式 表示名称 大小 精度
float 单精度 4个字节 小数点后7位左右
double 双精度 8个字节 小数点后15为左右
小数类型会有精度不准确的问题,参与运算可能会失真 BigDecimal
小数的字面常量值默认是double类型的,如果给float赋值,数据后面添加f/F
字符型
表示形式 表示名称 范围 大小
char 字符型 [0,65535] 2个字节
字符型的表示形式:
1. ‘‘中给单个字符 ‘1‘ ‘, ‘ ‘
2. 0~65535 根据Unicode字符集进行确认 去 ascii
当字符型参与运算的时候,先转为10进制的数再去参与运算
布尔型
boolean true|false 1位
引用数据类型: 类 接口 数组
数值型的表示形式: 满几进一
整型:
二进制: 是0,1组成 0b开头表示二进制
八进制: 是0...7之间的数组成 以0开头的数表示八进制
十进制: 默认进制
十六进制: 由0~9,a~f(大小写都可以)之间组成 以ox开头表示十六进制
其他进制转为十进制:从右往左计算;每一位数的值*进制数(次方从开始,以此加1) 结果就是十进制的值
十进制转为其他进制: 十进制的数一致除以要转的进制数 求余数,从下往上看
浮点数:
(1) 0.5->.5 z整数位数是0的时候,0可以省略
(2) 科学计数法 e->10 1.23e2==>1.23*10^2 (只能用来表示浮点数)
1.23e-2==>1.23/10^2
数据类型转换:
1.boolean不参与类型转换
2.自动类型转换|提升
从小范围类型的数据->大范围类型的数据
多个类型的值参与运算,最终结果的数据类型默认自动提升为最大的参与运算的数据的类型
多个数据的类型,如果只有byte,short,char任意组合,最终的结果会自动提升成为int
byte,short,char赋值,只要是在其范围内的常量值都可以成功赋值
3.强制类型转换 ,强制类型转换有可能会损失精度
小范围数据类型 变量名 = (小范围数据类型)大范围类型的数据;
byte -> short-> int -> long-> float ->double
转义字符:
使用转义字符让一些具有特殊含义的字符表示其本身
转义字符从\开始 \+要转义的字符
\‘ \" \\
\t 制表符 : 一个制表符代表8个空格 一个汉字占2个空格,一个字母占1个空格
如果制表符位置前面的内容满足制表符的整数倍,重开一个制表符位,如果不满,就不全一整个制表符位
\b 退格 光标回删一个
\n 换行 光标从这一行的行尾变为下一行的行首
\r 回到行首
运算符:
算术运算符.赋值运算符.比较运算符.逻辑运算符.条件运算符.位运算符 了解
操作数: 运算符左右两边的数就是操作数
表达式: 运算符连接左右两边的操作数叫做表达式
语句: ;代表一个语句的结束
一元运算符|单目运算符:操作数只有一个的运算符 ++ --
二元运算符|双目运算符:操作有两个 + - * /
三元运算符|三目运算符:条件运算符
算数运算符:
+ - * / % ++ --
+:
(1)正号(省略)
(2)加法运算
(3)字符串的连接符使用 : 当+左右两边只要有字符串的出现,那么就作为连接符使用,会把拼接为一整个字符串
赋值运算符
基础赋值运算符 =(= 优先级最低,唯一一个自右向左运算符的符号)
扩展赋值运算符(基础赋值运算符+算数运算符)
+= -= *= /= %=
a+=1 ==>a=a+1;
优点:
提高执行效率,否则编译器也会把数据优化成为扩展赋值运算符的形式,能够成倍提高效率
帮强制类型转换
缺点: 不直观
推荐使用扩展赋值运算符
比较运算符|关系运算符
> < >= <=
只能比较byte,short,int,long,float,double,char
== !=
可以使用基本数据类型|引用数据类型
结果都是boolean类型的结果
逻辑运算符
操作数是值为boolean类型的表达式
& 与: 两边都为true结果才为true,一个为false结果为false
| 或: 一个为ture就是true,两个都为flase才是false
! 非: 取反 !true-->false
^ 亦或: 两个操作数相同为false,不同为true
短路的作用:如果第一个操作数就已经能够决定最终的结果了,第二个表达式不再执行
&&
||
推荐使用短路
原文:https://www.cnblogs.com/jj-01/p/11112878.html