文章目录
前言
Java学习流程:Java基础、Java高级、Mysql、JDBC、JavaWeb、框架…
仅供本人复习专用,勿喷
提示:以下是本篇文章正文内容
一、Windows常用dos命令
进入命令行 :win+R:cmd
dir:目录
md:创建目录
rd:删除目录
cd:进入目录
cd..:返回上一级
cd/ :退出目录
del:删除文件
exit:退出命令行
二、Java 三种注释
单行://
多行:/* */ 、/** */
文档注释:<!-- 注释内容 -->
或: /**
@author
@version
*/
注:文档注释可使用 javaodc 解析 生成 网页文件形式的 说明文档
dos命令:javadoc -d mydoc -author -version 文件名.java
三、Java API:应用程序编程接口
java提供的基本编程接口:用于告诉开发者如何使用这些类,以及类中包含的方法
---------------------------------------------------
四、关键字
被 java 赋予特殊含义的单词
特点:都是小写
五、标识符
说明:自己可以起名字的地方,比如包名、类名、变量名、方法名、接口名
定义标识符规则:
1.英文、数字、_ 、$
2.不能以数字开头
3.不能用关键字,但可以包含
4.严格区分大小写
5.不能有空格
定义标识符规范:
1.包名:全小写
2.类名、接口名:大驼峰,即每个单词首字母大写
3.变量名:小驼峰,即首字母小写,后面单词首字母大写
4.常量名:所有字母大写,多单词用 _ 连接
六、变量
说明:
1.内存中有一个存储区域,使用变量名来访问这块区域的数据
2.变量是程序中最基本的存储单元
3.该区域内的数据可以在同一类范围内不断变化
4.变量包含变量类型、变量名、变量值
使用变量注意事项:
1.先声明,才能使用
2.变量的作用域:只在当前{},出了作用域,变量就不能再使用
3.同一个作用域,变量不能重名
变量类型:
8种基本数据类型:存储范围从小到大
整型:
byte 1字节
short 2字节
int 4字节
long 8字节 使用时:数值后+L
浮点型:
float 4字节 使用时:数值后+F
double 8字节
字符型:char 2字节 使用:' 单引号 ',且只能有一个字符
布尔型:boolean
引用数据类型:类、接口、数组、String.....
>不是基本数据类型,就是引用数据类型
>Stirng可以和基本数据类型做运算:但只能用 “+”连接
基本数据类型之间的转换:
自动转换:范围小的,直接转为范围大的
强制转换:范围大的,需要在数值前 +(转换类型)
>强制类型转换可能会导致精度损失
七、二进制、八进制、十进制、十六进制
进制转换:
这个咋说呢 ,学还是得学,但是电脑有计算器.....
学了好几次,因为不要自己算就忘记了,但一学就会
它不入脑啊,一想到根本不用自己算,就直接忘记了
----------------------------------------------
八、运算符
算术运算符:+、-、*、/、%、(前后)++、(前后)--
赋值运算符:=、+=、-=、*=、/=、%=
比较运算符:<、>、<=、>=、==、!=、instanceof
逻辑运算符:%、| 、!、&&、||、^
>与或:全部执行
>短路与或:得到结果就不执行
三元运算符:条件 ? a :b
>可以嵌套使用,可以改为 if-else,优先使用三元运算符,简洁、高效
九、分支结构
if:
if-else:
if-else if:
swtich-case-break-default:
switch(表达式){
case 常量:
语句1;//case语句相同时可省略
break;//可选
default://可选,位置灵活,相当于else
break;
}
注:
1.switch的表达式只能是以下6种数据类型:
byte、short、int、char、枚举、String
2.switch-case 可以换为 if-else
3.优先选择 switch-case,执行率高
十、循环结构
循环4要素:
1.初始化条件
2.循环条件
3.循环体
4.迭代条件
for:for(1;2;4){3} 知道循环次数使用
while:while(2){3;4} 不知道循环次数 必须有迭代条件,否则可能会死循环
do while:do{3}while(2) 至少循环一次 开发中,使用for和while更多
foreach:增强for循环 用于遍历集合、数组
无限循环:while(true)
>无限循环原因是因为不知道会循环多少次,需要根据循环体内某些条件,控制循环结束
>比如循环条件部分返回false,或在循环体内执行break;
嵌套循环:内层和外层循环,外层控制行,内层控制列
十一、break 和 continue关键字
使用范围 | 循环中使用作用 | 相同点 | |
---|---|---|---|
break | switch-case、循环结构 | 结束当前循环 | 关键字后不能有执行语句 |
continue | 只能在循环结构 | 结束本次循环,开始下次循环 | |
return | 功能 | 结束一个方法 | 执行后方法结束 |
-------------------------------------------
十二、数组
Array数组:引用数据类型
数组分类:
1.一维数组、二维数组....
2.引用数据类型数组、基本数据类型数组
一维数组:
声明:
静态初始化:int[] arr = new int[]{数组元素 1,2,3};
动态初始化:int[] arr = new int[数组长度 5 ];
调用数组元素: arr[元素下标]
>下标从0开始
获取数组长度:arr.length
遍历数组:for(int i=0;i < arr.length ;i++){}
数组元素默认初始化值:
整型:0
浮点:0.0
char:0
boolean:false
引用数据类型:null
数组内存解析:
栈:局部变量
堆:new 对象
方法区:常量池、静态域
二维数组:
声明:int[][] arr2 = new int[][]{{1,2},{1,2},{1,2,3}}
调用:arr2[0][1]:2
长度:array[2].length:3
遍历:for(int i=0;i<arr2.length;i++){
for(int j=0;arr[2].length;i++)
}
没啥好说的,看悟性吧....先外层后里层
十三、Arrays工具类
Arrays.equals(int[] a,int[] b):判断数组是否相等
Arrays.toString(int[] a):输出数组信息
Arrays.fill(int[] a,int val):将指定值填充到数组,数组中元素全部更改为 val
Arrays.sort(int[] a):数组排序
Arrays.asList(int[] a):将数组转换为List集合