这里写自定义目录标题
1工具
1.MarkDown使用
1.安装MarkDwon文件,所有选项直接下一步即可
2.将vue主题文件解压,全选,复制
3.粘贴到:在MarkDown中选择–文件–偏好 设置–打开主题文件夹 即可
4.将MarkDown工具关闭,再打开,在主题选项选择vue即可
#表示标题 一个#号一级标题 两个#号二级标题 以此类推 不同等级标题小到大会有层级关系
#号之后不要忘记加空格
大于号>加上空格,呼出绿色背景文本框,用来记录概念
三个~回撤进行填写代码
*号加上空格 可以实现列表
三个 ` 实现代码块
2.设置NotePad
- 设置 -----》 首选项 将默认语言改为java
- 设置-----》语言格式设置,设置字体格式
2学习规划
1.学习方法
3W1H
What :是什么?
Where:在哪里?
Why:为什么
How:如何
尽可能让更多的感官参与学习、记忆
2.学习内容
- 一阶段:Java基础,OOP,循环,数组,分支结构,IO,线程,集合,常用类
- 二阶段:HTML+CSS + JS MySQL,JDBC,JSP,Servlet
- 三阶段:Maven,Git,SSM(Spring,SpringMVC,MyBatis),Redis
- 四阶段:SpringBoot,SpringCloud Alibaba,RabbitMQ ActiveMQ Shiro Docker Linux
3.java概述
1.类的概述
同一个源文件中可以定义多个类。
编译后,每个类都会生成独立的 .class文件。
一个类中,只能有一个main方法,每个类都可以有自己的main方法。
public修饰的类称为公开类,要求类名必须与文件名称完全相同,包括大小写。
一个源文件中,只能有一个公开类。
2.编程规范
1.必须要有合适的缩进(每遇到大括号缩进一个tab键的距离)
2.一行只写一句代码
3.注释
注释:标注解释,用于描述某一行,某一段,某个方法,某个类实现的功能,相当于是解释说明,用于提高代码的阅读性
单行注释://
多行注释:/* */
文档注释:
/**
*/
javadoc -d . HelloWorld.java 生成帮助文档
4.java语言基础
1. 引入变量的概念
变量就是用于记录数据的
举例:比如你的同桌需要大宝剑,发现钱不够,找你借5毛钱
时间:2022年4月20日 上午11点28分
地点:Java2207教室
人物:你的同桌
事件:借钱
金额:0.5元
……
通过以上的记录,我们发现生活的数据是有不同的数据类型的,程序中也一样
2. 变量的定义方式
先声明,再赋值:【常用】
数据类型 变量名;
变量名 = 值;声明并赋值:【常用】
数据类型 变量名 = 值;多个同类型变量的声明与赋值:【了解】
数据类型 变量1 , 变量2 , 变量3 = 值3 , 变量4 , 变量5 = 值5;
3. 单位换算
1TB = 1024GB
1GB= 1024MB
1MB = 1024KB
1KB = 1024Byte(字节)
1Byte = 8bit(位)
4. 数据类型
4.1 整数类型
如需为long类型赋值 如果取值范围超过了int的取值范围 必须在末尾加上 L
大小写都可以 推荐大写 没有超过int 可加可不加
4.2 浮点类型
浮点(小数)类型 float(单精度) double(双精度)
double为浮点数的默认类型,如需为float类型赋值,需要在值的后面追加“F”
float和double都是近似值 不是精确值
float和double取值范围计算方式与整数类型不同
4.3 布尔类型
可直接赋值true / false
也可赋值一个结果为true / false的表达式
注意:Java中的boolean不能参与算数运算
4.4 字符类型
Unicode字符集支持ASCII编码(美国标准信息交换码)。
Unicode中每个字符都对应一个十进制整数,从而可以使用多种方式赋值。字符赋值:char c1 = ‘A’;(通过’'描述为字符赋值)
整数赋值:char c2 = 65;(通过十进制数65在字符集中对应的字符赋值)
进制赋值:char c3 = ‘\u0041’;(通过十六进制数41在字符集中所对应的字符赋值)
// 方式2 直接赋值为0~ 65535 之间的数值
// 当我们直接使用十进制的数值给char类型赋值 将参考ASCII码表
// ASCII码表 美国标准信息交换码// 中文在Unicode表中保存 万国码 是一个十六进制的编码表 记录了世界上大多数国家的语言
// 包含中文 中文的取值范围是 \u4e00 ~ \u9fa5
4.5String类型
6.转义字符
7.类型转换
进行算数运算时:
两个操作数有一个为double,计算结果提升为double。
如果操作数中没有double,有一个为float,计算结果提升为float。
如果操作数中没有float,有一个为long,计算结果提升为long。
如果操作数中没有long,有一个为int,计算结果提升为int。
如果操作数中没有int,均为short或byte,计算结果仍旧提升为int。
进行数学计算,哪个数值类型大就提升为哪个类型,如果均为byte,short则提升int类型
特殊:任何类型与String相加(+)时,实为拼接,其结果自动提升为String。
- 自动类型转换
自动提升
1.两种类型要兼容 数值与数值类型是兼容
2.目标类型(等号左边的)取值范围要大于源类型(等号右边的)取值范围
- 强制类型转换
手动下降
1.两种类型要兼容 数值与数值是相互兼容
2.目标类型(等号左边)小于源类型(等号右边)
- 强制类型转换 特殊情况
当要强制转换的数据,数值范围超过要转换的数据类型时会出现:
1.高位截断
2.符号位发生变化
8.运算符
8.1 算数运算符
++ 或者 – ,单独作为一条语句书写 ,在前在后没有区别
如果不是作为一条单独的语句书写
++或者-- 在前 先执行++或者-- 再执行其他的
++或者-- 在后 先执行其他的 再执行++或者–
public class Test2{
public static void main(String [] args){
// ++ 和 --
// ++ 表示自增1
// -- 表示自减1
int a = 10;
a++; // 等价于 a = a + 1;
System.out.println(a);
int b = 10;
b--; // 等价于 b = b - 1;
System.out.println(b);
System.out.println("------------------------------");
int c = 10;
++c;
System.out.println(c);
int d = 10;
--d;
System.out.println(d);
System.out.println("------------------------------");
// ++ 或者 -- ,单独作为一条语句书写 ,在前在后没有区别
// 如果不是作为一条单独的语句书写
// ++或者-- 在前 先执行++或者-- 再执行其他的
// ++或者-- 在后 先执行其他的 再执行++或者--
int e = 10;
int f = e--;
System.out.println("e的值是:" + e);
System.out.println("f的值是:" + f);
int h = 10;
int j = --h;
System.out.println("h的值是:" + h);
System.out.println("j的值是:" + j);
}
}
8.2 赋值运算符
4.3 关系运算符
关系运算符 最终的结果都是布尔类型 表示两侧的内容 关系是否成立
4.4 逻辑运算符
&& 短路与 要求两个或者多个表达式都成立 则结果为true
&& 短路与 有短路的效果 如果第一个表达式结果为false
那么后续的表达式将不再执行& 与 要求两个或者多个表达式都成立 则结果为true
& 与 没有短路的效果 不管第一个表达式是否成立 都将执行完所有的表达式|| 短路或 要求两个或者多个表达式 有一个成立 则结果即为true
|| 短路或 有短路的效果 如果第一个表达式已经成立 则后续的表达式不再执行| 或 要求两个或者多个表达式 有一个成立 则结果即为true
| 或 没有短路的效果 不管第一个表达式是否成立 都将执行完所有的表达式
public class Test1{
public static void main(String [] args){
// 逻辑运算符
// && 短路与 要求两个或者多个表达式都成立 则结果为true
// && 短路与 有短路的效果 如果第一个表达式结果为false
// 那么后续的表达式将不再执行
int a = 10;
int b = 15;
int c = 20;
System.out.println((a < b) && (b < c)); // true
System.out.println((a < b) && (b > c)); // false
System.out.println("------------------------------------------");
// & 与 要求两个或者多个表达式都成立 则结果为true
// & 与 没有短路的效果 不管第一个表达式是否成立 都将执行完所有的表达式
System.out.println((a < b) & (b < c)); // true
System.out.println((a < b) & (b > c)); // false
System.out.println("------------------------------------------");
// || 短路或 要求两个或者多个表达式 有一个成立 则结果即为true
// || 短路或 有短路的效果 如果第一个表达式已经成立 则后续的表达式不再执行
System.out.println((a < b) || (b < c)); // true
System.out.println((a < b) || (b > c)); // true
// | 或 要求两个或者多个表达式 有一个成立 则结果即为true
// | 或 没有短路的效果 不管第一个表达式是否成立 都将执行完所有的表达式
System.out.println((a < b) | (b < c)); // true
System.out.println((a < b) | (b > c)); // true
}
}
4.5 三元运算符
// 三目(三元)运算符
int age = 19;
System.out.println(age >= 18 ? "成年了" : "未成年");