黑马程序员技术交流社区
标题: 黑马学习笔记 [打印本页]
作者: 来点刺激的吧 时间: 2019-3-8 01:26
标题: 黑马学习笔记
java学习知识点
1.DOS命令语句
2.常量字符常量中 单引号范围里 必须有数字,且必须是一个;
3.数据类型 整数: byte : 1字节(-128~127) short:2字节 int:4字节(默认) long:8字节 | 浮点数: float:4字节 double:8字节(默认) | | 布尔: boolean:1字节(只有true,false) |
这里的默认是代表 代码中出现整数时候,是默认为int的范围,也就是说,常规的赋值时候,整数数值的取值范围不可以超过int的范围;float同理。
使用long数值,后缀加L;使用float数值,后缀加F;
4.变量格式:数据类型变量名 = 变量值;
注意:1.在一个{……}中,变量名不重复; 2. 对于float和long类型的数值,后缀字母不可以丢失
3.使用前要赋值;4. 变量使用不可以超过作用的范围
5.标志符1. 由数字、字母、下划线(_)和美元符($)组成
2. 不能以数字开头
3. 不能是关键字
4. 区分大小写
小驼峰命名 → 方法/变量; 大驼峰 → 类;
6.类型转换小转大:自动转换
大转小:目标数据类型 变量名 = (目标数据类型)值或者变量
7. 算术运算符+(加),-(减),*(乘),/(除),%(取余)
注意:除法得到的是商,取余得到是余数;整数相除得到的是整数,小数参与除法得到的是小数;
取余可以用于奇偶判断,除法和取余可以用于数字个,十,百位的获得;
另外:“+”使用中,遇到字符变量,是以字符变量底层数值进行操作;(‘0’→ 48;‘a’→ 97;‘A’→65;)
“+”使用中遇到字符串变量,则起到拼接作用
8.赋值运算符=(赋值);+=(加后赋值);-=(减后赋值);*=(乘后赋值);/=(除后赋值);%=(取余后赋值)
注意:扩展的赋值运算符隐含了强制类型转换
a+=3;//相当于 a = (a的数据类型)(a+3);
9.自增自减运算符格式: ++(--)变量;变量++(--)
注意:
单独使用时候,++(--)无论是在前,还是后,结果一样;
混合使用时候,放在变量的后边,先拿变量参与操作,后拿变量做++或者--。
放在变量的前边,先拿变量做++或者--,后拿变量参与操作。
10.比较运算符号==(等于);!=(不等于);>(大于);>=(大于等于);<(小于);<=(小于等于)
比较运算符得到的结果,一定是个boolean值
11.逻辑运算符号&(与):有false 则false;
|(或):有true则true;
^(异或):相同为false,不同为true;
!(非):!true == false;
&&(短路与):使用时候,一当判断出false时候,后边语句不执行,直接输出false。
||(短路或):使用时候,一当判断出true时候,后边语句不执行,直接输出true。
12.三元表达式:格式:变量A = 关系表达式 ?表达式1:表达式2
关系表达式为true时候,将表达式1赋值给变量A;
关系表达式为false时候,将表达式2赋值给变量A;
13.键盘输入①导包。Scanner类在java.util包下。
import java.util.Scanner; //导包的语句必须出现在类定义的上边
②创建键盘录入对象。
Scanner sc = new Scanner(System.in);
③接收键盘录入数据。
int i = sc.nextInt();
14.if语句 格式: if (关系表达式) { 语句体; } | 格式: if (关系表达式) { 语句体1; } else { 语句体2; } | 格式: if (关系表达式1) { 语句体1; } else if (关系表达式2) { 语句体2; } … else { 语句体n+1; } |
15.swtich语句 格式: switch(表达式) { case 值1: 语句体1; break; case 值2: 语句体2; break; … default: 语句体n+1; [break;] } | 注意: 1. 表达式:取值为byte、short、int、char,enum枚举,String 2. case具有穿透性质——匹配哪一个case就从哪一个位置向下执行,直到遇到break或者整体结束为止 3. default:表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。 4. break:表示中断,结束的意思,用来结束switch语句 |
16.循环语句
for(初始化语句;条件判断语句;条件判断语句){ 循环体语句; } | 初始化语句; while (条件判断语句) {
循环体语句; 条件控制语句; } | 初始化语句; do { 循环体语句; 条件控制语句; }while(条件判断语句); |
17.跳转控制语句
continue:用在循环中,基于条件控制,跳过某次循环体内容的执行,继续下一次的执行
break:用在循环中,基于条件控制,终止循环体内容的执行,也就是说结束当前的整个循环
18.Random随机数
importjava.until.Random; →导包
Randomr = new Random(); →创建对象
intnumber = r.netInt(10);//获取数据的范围:[0,10),包括0,不包括10; →获得随机数
19.数组
数组定义:
数据类型[ ] 数组名 或 数据类型 变量名[ ]
数组初始化:
数据类型[] 变量名 = new 数据类型[数组长度];
数据类型[]变量名 = new 数据类型[]{数据1,数据2,……}
简化→ 数据类型[] 变量名 = {数据1,数据2,数据3……}
数组访问:
数组名[索引]
注意:索引从0开始,最大索引值为:(数组长度-1)
存储空间问题:
栈内存:存储局部变量,定义在方法中的变量
堆内存:存储new出来的内容(实体,对象),数组在初始化时,会为存储空间添加默认值
数组操作中常见小问题:
索引越界:访问了数组中不存在的索引对应的元素,造成索引越界问题
空指针异常:访问的数组已经不再指向堆内存的数据,造成空指针异常
null:空值,引用数据类型的默认值,表示不指向任何有效对象
20.方法
方法定义:
修饰符 返回值类型 方法名(参数列表){ 语句体; return 结果; } |
在方法定义前,需要明确返回值类型和明确参数列表
方法注意事项:
1、 方法不能嵌套定义
2、 void表示无返回值,可以省略return,也可以单独的书写return,后面不加数据
3、 return可以做返回值输出,也可以做结束方法使用
4、 明确返回值类型:主要是明确方法操作完毕之后是否有数据返回
明确参数:主要明确参数的类型和数量
5、 调用方法时:void类型的方法,直接调用即可
非void类型的方法,推荐用变量接收调用
方法重载:
方法重载指同一个类中定义的多个方法之间的关系,满足下列条件的多个方法相互构成重载
1.多个方法在同一个类中
2.多个方法具有相同的方法名
3.多个方法的参数不相同,类型不同或者数量不同
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |