1.注释
注释就是对程序功能的解释说明。以特定的符号作为标记,程序在运行过程中不会执行注释。
Java中标记注释的符号分为三种:
(1)单行注释
单行注释用"//"标记, 其注释内容从 // 开始到本行结尾。例如:
//注释内容
(2)多行注释
多行注释以 /* 开始,以 */ 结束,把一段内容包起来
/* 注释内容 注释内容 */
(3)文档注释
文档注释,用于为类,方法(函数),属性进行说明(放在前面),调用时鼠标放在上面可以显示这段注释,语法是以 /** 开始,以 */ 结束
注意 : 在 Java 中 ,多行注释不能嵌套 „
也就是说,当一段代码中包含一个 /* ,在使用多行注释包裹是就达不到注释目的。
2.关键字
关键字是指 Java 中有特殊含义,用于特定用途的单词
关键字的特点是关键字中所有字母都为小写
例如:public,private,int等,我就不一 一列举了
3.保留字
保留字是指现有Java版本尚未使用,但以后版本可能会作为关键字使用的单词
例如: goto 、const
自己命名变量名或者方法名等标识符时要避免使用这些保留字和关键字
4.标识符
Java中对各种变量、方法和类等要素命名时使用的字符序列称为标识符。
Java中规定了定义标识符的规则:
由26个英文字母大小写,0-9 ,_或$ 组成
数字不可以开头。
不可以使用关键字和保留字,但能包含关键字和保留字。
Java中严格区分大小写,长度无限制。
标识符不能包含空格。
注意:在起名字时,为了提高阅读性,要尽量有意义,“见名知意”
5.Java数据类型
(1)基本数据类型
1.数值型
整数类型
byte : 一个字节 表数范围 : -128 ~ 127
short : 二个字节 表数范围 : -215 ~ 215-1
int : 四个字节 表数范围 : -231 ~ 231-1
long : 八个字节 表数范围 : -263 ~ 263-1
Java语言的整型常量默认为int型,声明long型常量可以后加**‘ l ’或‘ L ’** ,如:
int i = 600; //正确
long l = 8888888888L; //必须在数字后加l或L否则会出错
浮点型
float : 单精度 四个字节 在储存大型浮点数组的时候可节省内存空间
double: 双精度 八个字节 double类型同样不能表示精确的值
float和double类型不能表示精确的值
float定义时要在数后加上f或F
double d = 123.4;
float f = 234.5f ;
2.布尔型
boolean :布尔值取值的时候只允许取true或false,不能用其他的代替。
该类型适于逻辑运算,一般用于程序流程控制 。
3.字符型
char : 字符型的值是一个用单引号引起来的单个字符,例如:
char a = 'a'; char b = '中';
Java采用Unicode编码,一个字符占俩个字节,16位,所以可以用十六进制编码来表示
char a = '\u0061'; //a的Unicode编码为97
注意:Unicode 转义序列会在解析代码之前得到处理 。 例如, " \u0022 + \u0022"(Unicode值\u0022标识双引号)并不是一个由引号包围加号构成的字符串 。 实际上 ,\u0022 会在解析之前转换为 " ,这会得到也就是一个空串(""+"") 。
(2)引用数据类型
类 :最常用的就是String类型(字符串)
接口 : 如:List< E >:列表( E代表泛型 )
Map:双链的集合,以键值对形式存储的,K(键)和V(值)都是泛型
数组:数组是指存储在一个连续的内存块中的相同数据类型的元素集合。因为引用的是内存地址,所以数组属于引用数据类型。
6.基本数据类型转换
首先boolean型的值不能与其他类型相互转换
默认转换
整形,字符型,浮点型的数据在混合运算中相互转换,转换时遵循以下原则:
容量小的类型默认转换为容量大的数据类型;数据类型按容量大小排序为:
byte,short,char->int->long->float->double
byte,short,char之间不会互相转换,他们三者在计算时首先会转换为int类型
强制转换
容量大的数据类型转换为容量小的数据类型时,要加上强制转换符,但可能造成精度降低或溢出;使用时要格外注意。
int i = 100; double d = i; double d1 = 10.99; int i1 = (int) d1;
注意:
有多种类型的数据混合运算时,系统首先自动的将所有数据转换成容量最大的那一种数据类型,然后再进行计算。
7.运算
运算符
Java 语言支持如下运算符:
算术运算符:
字符串连接运算符:+ ;
关系(比较)运算符: >,<,>=,<=,==,!= ;
逻辑运算符:
&—逻辑与 | —逻辑或 !—逻辑非
&& —短路与 || —短路或 ^ —逻辑异或
异或就是左右的值一样时就是false,追求一个“异”字。
我们可以看到用逻辑与和短路与计算的值是相同的,那它们的区别在哪呢?
逻辑与:会把符号俩边的表达式都计算一边,然后判断
短路与:因为与运算符号俩边的表达式有一个false就返回false,所以如果计算了符号左边的表达式是false,就不会计算符号右边的表达式,直接返回false,如果左边的是true才会计算右边
逻辑或和短路或同理,短路或左边的表达式是true时就不会计算右边,直接返回true
public static void main(String[] args){ int a = 1; int b = 2; if(++a>1||++b>4){ System.out.println(a); System.out.println(b); } System.out.println("-------------"); a = 1; //让值回到初始值 b = 2; if(++a>1|++b>4){ System.out.println(a); System.out.println(b); } System.out.println("-------------"); a = 1; b = 2; if(++a>3&&++b>4){ } else { System.out.println(a); System.out.println(b); } System.out.println("-------------"); a = 1; b = 2; if(++a>3&++b>4){ }else { System.out.println(a); System.out.println(b); } }
输出如下:
赋值运算符:
位运算:
运算顺序
单目>算数运算符>移位>比较>按位>逻辑>三目>赋值
单目运算符(一元运算符,即一个变量):+,-,++,–
算数运算符:+,-,*,/,%
移位运算符:<<,>>
关系运算符:>,<,>=,<=,==,!=
位运算符:&,|,~,^,
逻辑运算符:&&,||
三目运算符:表达式1?表达式2:表达式3;
赋值运算符:= 等