前言
初次尝试改变做笔记的风格,之前的太详细拖沓,主次不分明,现在我希望能做出对自己实用的笔记
目录
一、基础知识
- java 执行流程
- 注意事项
- 转义字符
- 注释
一、基础语法 - 输入 Scanner
- for-Each
- while
- swtich
- 集合
二、面向对象核心 - 类与对象
一、基础知识
java 执行流程:
.java 源文件->(javac编译):.class 字节码文件->(java运行):结果注意事项:
一个源文件最多只能有一个 public 类,源文件必须以该类名命名;其他类个数不限,也可以将 main 方法写在非 public 类中然后指定运行非 public 类,这样入口方法就是非 public 的 main 方法转义字符
\t:制表符
\n:换行符
\r:回车1
2
3
4
5
6
7
8
9
10
11
12
13
14System.out.println("韩顺平教育\r北京"); \\输出:北京平教育
```
\\\:一个\
\\":一个"
\\':一个'
4. 注释:
1. 单行注释:\\\
2. 多行注释:\\* *\
3. 文档注释
# 二、基础语法
1. 基本数据类型
1. 输入 Scanner
**键盘读取用户输入**//输入
import java.util.Scanner;
Scanner sc = new Scanner(System.in);
String number = sc.nextLine();
int age = sc.nextInt();1
2
3
4*nextInt()后面加nextLine()要注意换行符问题,因为 nextInt()不吸收换行符,残留在输入缓冲区,所以nextInt()后如果还有输入加个 sc.nextLine()*
2. for-Each
**用于遍历集合和数组,只遍历,不需要下标时使用**//for(元素类型 名称:集合名/数组名等)
for(Student student :list){
student.printInformation();
}1
2
3
3. while
循环菜单程序结构(小系统核心):boolean running = true;//通过修改 running 退出
while(running){
//显示菜单
//用户输入选择
//switch
}1
2
3
4. swtich
根据输入执行不同功能swtich(choice){
case 1:{
break;
}
case 2:{
nreak;
}
}1
2
3
4
5
6*每个 case 后必须加入 break,否则会发生 case 穿透*
5. 集合
1. 查找:遍历集合,用.equals()比较字符串
2. 删除:普通 for 循环,通过下标来删除
3. 排序:Collectios.sort(list,(s1,s2)->s1.getAge() - s2.getAge());
1
2
3
4
5
# 三、面向对象核心
1. 类与对象
1. 类与对象
2. 构造方法puclic Student(String number,String name, int age){
this.number = number;
this.name = name;
this.age = age;
}1
2
33. setter、getter(getter return值)
4. ArrayList(专门装对象的集合,有下标,本质上动态数组)
**不确定元素个数,需要频繁删减的场景**// 创建 ArrayList:list
ArrayListlist = new ArrayList<>();
//添加
list.add(student01);
//取出
Student student02 = list.get(student01);
//删除
list.remove();1
2*存进集合的不是变量名。而是对象的地址(引用)*
# 四、异常处理try{
}catch(Exception e){
}finally{
}
# 五 集合
1. 集合框架体系:
集合主要是两组(单列集合、双列集合)
Collection 接口有两个重要子接口 List、Set,他们的实现子类都是单列集合
Map 接口的实现子列是双列集合,存放 k-v
**单列集合**
Collection:List、Set
List:ArrayList、Vector、LinkedList
Set:HashSet、TreeSet
**双列集合**
Map:HashMap、HashTable、TreeMap
HashTable:Properties
HashMap:LinkedHashMap