1.Java的基本语法单位
1.1标识符的命名规则
(1)标识符由字母(AZ和az)、数字(0~9)、下划线(_)、美元符号($)以及部分Unicode字符集(各符号之间没有空格)组成。
(2)标识符的首字母以美元符号、字母或下划线开头,后面可以是任何字母、数字、美元符号或下划线,但不能以数字开头。
(3)标识符的命名不能是关键字、布尔值(true和false)和null。
(4)标识符区分大小写,没有长度限制。
1.2保留关键字
Java关键字是预先定义的具有特别意义的标识符,也被称为Java保留字,Java关键字不能用于类名、方法名、变量名和参数。Java中定义了51个关键字。
1.3Java注释
(1)单行注释
//这里是注释,通常会写在代码的前面
(2)多行注释
/*
这里可以写多行注释
例如这样
*/
2.Java的数据类型
2.1基本数据类型
Java数据类型有三种:
(1)数值型:数值型有整数型和浮点数型。整数类型包括int,short,long。浮点数类型包括double和float。
(2)字符型:字符型只有char。
(3)布尔型:布尔型包括true和false。
int a = 4;
short b = 4;
long c = 4L;
double d = 4.0;
float e = 4.0;
char f = 'A';
boolean g = true;
2.2引用数据类型
引用数据类型包括类、数组、枚举、接口。字符串属于引用数据类型。
2.3基本数据类型间的转换
(1)算数运算时,不同类型的操作数,首先自动转化为表达式中最高级别的数据类型,然后进行运算,运算的结果是最高级别的数据类型,简称低级别自动转化为高级别。
类型转换符合以下规则
byte < char = short < int < long < float < double
(2)赋值运算时,数据类型的转换有自动类型转换和强制类型转换。
1)在原始类型转换之间进行特定转换(将低级别类型的值赋值给高级别类型时)称为扩展原始转换。扩展原始转换会进行自动类型转换。
byte b = 7;
int i = b;
//b自动转换为int类型
2)在原始类型转换之间进行特定转换(将高级别类型的值赋值给低级别类型时)称为缩小原始转换。由于低级别类型的表示范围较小,将低级别类型的值赋值给高级别类型的值可能会导致数据丢失。缩小原始转换必须进行强制类型转换。
int a = 8;
byte b = (byte) a;
//用括号表示缩小原始转换
3.表达式
3.1 Scanner类介绍
Scanner方便获取用户的输入,实现程序与人之间的交互。
(1)导入Scanner类,可以使用以下方法导入。
import java.util.Scanner;
(2)创建Scanner对象
Scanner in = new Scanner(System.in);
(3)获取用户输入的数据
通过Scanner对象,我们可以使用常用的方法来获取用户从键盘上输入的不同类型的数据,如整数、浮点数、字符串等。
String next()//获取一个字符串
String nextline()//获取一个字符串,可以包括空格和连续输入的字符
int nextInt()//获取一个整数
double nextdouble()//获取一个双精度浮点数
4.常用运算符
4.1 赋值运算符
赋值运算符“=”用于给变量赋值。可以和变量运算符相结合组成复合赋值运算符,复合运算符主要包括“+=”,“-=”,“*=”,“/=”,“%=”。
int i = 5;
int j = 8;
j += i;
j -= i;
j *= i;
j /= i;
j %= i;
4.2 算数运算符
算数运算符包括“+”,“-”,“*”,“/”,“%”,“++”,“–”。
int i = 6;
int s = 0;
s = i ++;
s = i --;
4.3 关系运算符
关系运算符也叫做比较运算符,用于比较两个变量或者常量的大小并返回布尔值true或false来表示比较结果。在Java中,共有6个常用的关系运算符,分别是“==”,“!=”,“>”,“<”,“>=”,“<=”。
4.4 逻辑运算符
逻辑运算符用于对两个布尔类型的的值进行运算并返回一个布尔值作为结果,他们用于组合和操作布尔表达式,以便进行垃圾片段和控制流程。
boolean a = true;
boolean b = false;
boolean c = a & b;
boolean c = a | b;
boolean c = a ^ b;
boolean c = !a;
boolean c = (a ^ b && a | b);
boolean c = (a & b || a ^ b);
4.5 位运算符
& //按位与,两个操作数都是1结果才是1
| //按位或,两个操作数一个是1,结果就是1
^ //按位异或,两个操作数相同,结果为0;两个操作数不同,结果为1
~ //按位非,操作数为1,结果为0;操作数为0,结果为1
<< //左移,右侧空位补0,m << n = m乘以二的n次方(注意边界情况)
>> //右移,左侧空位补最高位,m >> n = m除以二的n次方
>>> //无符号右移,左侧空位补0
4.6 条件运算符
条件运算符是Java中唯一需要三个操作数的运算符,所以又称为三目运算符或三元运算符。条件运算符的语法格式如下:
条件 ?表达式1 : 表达式2
(1)首先对条件进行判断,其结果为布尔值true或false。
(2)如果条件为true,则返回表达式1的值。
(3)如果条件为false,则返回表达式2的值。
条件运算符常用于根据表达式的真假来选择不同的值或执行不同的操作。它提供了一种简单的方式来实现条件判断和赋值的组合。