此内容源自
B站狂神说Java基础
的课后笔记与总结,用于复习和查看,因此写得比较简陋,不太适合萌新学习
用户交互Scanner
使用next()、nextLine()去接收输入
- next() 不能接收有空格的字符串
- nextLine() 可以接收有空格的字符串,以回车为结束符(一般都用这个)
使用hasNext()、hasNextLine()来判断是否还有输入,使用场景一般是:
- 不确定是否有输入 ➝ 用 hasNext() 先检查
- 文件读取 ➝ 用 hasNext() 避免超出范围
- 明确有输入 ➝ 直接用 next() 读取
使用完Scanner后关闭是一个良好的习惯
Scanner scanner = new Scanner(System.in);while (scanner.hasNext()) { // 这里会等待输入,被System.in阻塞,直到用户输入了才调用hasNext()String input = scanner.next();System.out.println("你输入了:" + input);
}scanner.close();
顺序结构
按照顺序一句一句执行,从上到下依次执行
选择结构
- if单选择结构
int num = 10;
if (num > 0) {System.out.println("num是正数");
}
- if双选择结构
int num = -5;
if (num > 0) {System.out.println("num 是正数");
} else {System.out.println("num 不是正数");
}
- if多选择结构
int num = 0;
if (num > 0) {System.out.println("num 是正数");
} else if (num < 0) {System.out.println("num 是负数");
} else {System.out.println("num 是零");
}
- 嵌套的if结构
- switch结构
int day = 3;
switch (day) { //变量,可以为byte、short、int和char或者String(JDK7新特性)case 1: //case后必须跟字符串常量和字面量System.out.println("星期一");break; //不写的话会case穿透case 2:System.out.println("星期二");break;case 3:System.out.println("星期三");break;default:System.out.println("未知");
}
*学会查看源码:
- 直接查看源码:查看java文件
- 没有源码:只有class字节码文件时,通过反编译查看源码
具体方式:在IDEA中找到‘project structure’->找到‘compiler output’路径打开->找到对应的字节码文件使用IDEA打开
循环结构
- while循环
int i = 1;
while (i <= 5) {System.out.println(i);i++;
}
- do...while循环(至少执行一次)
int i = 1;
do {System.out.println(i);i++;
} while (i <= 5);
- for循环
for (int i = 1; i <= 5; i++) {//可用5.for来快速生成for循环结构System.out.println(i);
}
- JDK5增加的新特性增强for循环
用于遍历数组和集合
for (元素类型 变量名 : 遍历对象) {// 循环体
}
break continue goto
- break:强制退出循环,不执行剩余内容
- continue:终止某次循环,接着进入下一次循环
- goto:Java没有goto,但是可以利用label实现goto,不过通常不使用