Java基础语法
——————————————————————————————————————————————————
1. 注释
- 注释:解释说明代码功能。
单行注释,多行注释,文档注释(不影响程序执行),IDEA项目里面的out文件里的class文件直接双击就可以反编译可以看到去掉注释的源码
/**
* 文本注释
*/
/*
多行注释
*/
// 单行注释
2.字面量
-
字面量
| 整数 | 生活中程序中书写一致
| 小数 | 生活中程序中书写一致
| 字符 | 用单引号,仅有一个字符
| 字符串 | 用双引号,内容可有可无
| 布尔值 | true,false 只有两个
| 空值 | null
|特殊字面量 | 例如:\t、\n -
数据类型:
基本数据类型:四大类八种
整型(byte,short,int,long)->1,2,4(十进制10位,),8(十进制19位)
浮点型(float,double),-> 4(十进制38位),8(十进制308位)
字符型(char),->2
布尔型(boolean)->1
引用数据类型(字符串、枚举类型)
3.变量
-
变量详解:
变量是内存中的一块区域,理解成一个盒子,装程序要处理的数据的。
数据类型 变量名称 = 数据;
数据形式,变量名首字母小写,=是赋值 -
十进制 -> 二进制 (除二取余法)
TB GB MB KB B b
文本:字符在计算机中,是对应的ASII码数值
0:48、 A:65、 a:97
图片数据存储:是无数像素点组成0~255x255x255
声音存储:对应的是波形图,存储波的值
二进制 -> 十进制 (各个位数乘二)
4.关键字、标识符
- 关键字:一些特殊字符,Java开发工具会提示,如public,static,class……
标识符:数字不能开头,可以用数字,字母,下划线,$符。
变量名:建议首字母小写 studyNumber……
类名:首字母大写 Student,HelloWorld……
5.方法
-
方法:就是功能,Java开发的软件中功能最小的单位是一个个的方法。
-
如何定义满足需求的方法,学会调用?
修饰符 返回值类型 方法名称 (形参列表){
方法体代码
return 返回值;
}
-
调用方法:方法名称(数据)
方法名要首字母小写,驼峰模式,getCode -
方法是否需要接受数据,方法是否返回数据?
无返回值的方法中可以直接通过单独的return;立即结束当前方法执行。
做任何功能都可以定义方法。 -
方法可以重载:
一个类中出现多个方法的名称相同,但是它们的形参列表是不同的,那么这些方法就成为方法重载了
类型不同,个数不同,顺序不同
6.类型转换
- 自动类型转换,类型范围小的变量,可以直接赋值给类型范围大的变量(byte -> int)
- 强制类型转换,类型范围大的变量,不可用直接赋值给类型范围小的变量,会报错,需要强制类型转换过去(int -> byte)
直接把小范围赋给大范围类型, 会报错
所以需要强制类型转换
int i = 20;
// 强制类型转换:类型 变量2 = (类型)变量1;
byte j = (byte)i;
- 表达式的自动类型提升:
表达式中,小范围类型的变量,会自动转换成表达式中较大范围的类型,再参与运算;
表达式最终结果类型由表达式中的最高类型决定;
表达式中,byte,short,char运算时是直接转换成int类型参与运算;
7.输入输出
-
输出,把程序中的数据展示出来
-
输入,程序读取用户键盘输入的数据(通过Java提供的Scanner程序来实现)
Scanner是Java提供好的API,程序员可以直接使用 -
输入:
1.导包(可以自动)
2.抄代码,代表得到键盘扫描器对象
Scanner sc = new Scanner(System.in);
3.抄代码,等待接受用户输入数据
String name = sc.next();
int age = sc.nextInt();
8.运算符
-
算术运算符:+-*/%
+与字符串运算的时候用作连接符
"abc" + 5 --> "abc5"
能算则算,不能算就连在一起
两个整数作除法,其结果一定是整数,因为最高类型是整数 -
自增自减运算符:++ --
-
赋值运算符:=
-
扩展赋值运算符:+= -= *= /= %=
隐含了强制类型转换:a+=b
a+=b ==> a = (a的类型)(a+b) 用来收红包 -
关系运算符:> >= < <= == !=
成立返回true,不成立返回false -
三元运算符:
条件表达式?值1 :值2 -
逻辑运算符:
& 逻辑与:多个条件必须都是true结果才是true
| 逻辑或:过个条件中只要一个true结果是true
! 逻辑非:就是取反
^ 逻辑异或:前后相同则是false,相反是ture
&& 短路与:左边为false,右边不执行 ->false(短路特性)
|| 短路或:左边为true,右边不执行-> true(短路特性)
9.其他知识点
-
8421码(BCD码):是一种将十进制数字编码为四位二进制数的方法
二进制以0B或者0b开头,八进制以0开头,十六进制以0x开头 -
API(application Programming Interface):应用程序编程接口
Java为自己写好的程序提供了相应的程序使用说明书(API文档) -
设置自动导包:file -> settings -> editor -> general ->auto improt ->
add unambiguous imports on the fly
optimize improts on the fly
两个勾上,然后点击apply