System.out.println(10) // 输出带回车
System.out.print(10) // 输出没有回车
一、顺序机构
挨个往下写,就是最基本的顺序结构
二、选择结构 if、switch
if单选择结构
虽然简单,但也挺经常用的
Scanner scanner = new Scanner(System.in); // 和下面的scanner.close一起写
System.out.println("输入一个单词,猜猜看对不对?");
String sInput = scanner.next();
if(sInput.equals("hello")){ // if单选择
System.out.println("对啦!");
}
System.out.println("再来一次!");
scanner.close(); // 必须关闭
if双选择
Scanner scanner = new Scanner(System.in);
System.out.println("考了多少分呀?请输入:");
int score = scanner.nextInt();
if(score > 60){
System.out.println("及格啦!");
}else{ // if双选择,多一个else
System.out.println("没及格哦");
}
scanner.close();
if多选择
在if中上下限写清楚了,最后一个else判断违规,这个写法挺精妙的。
Scanner scanner = new Scanner(System.in);
System.out.println("考了多少分呀?请输入:");
int score = scanner.nextInt();
if(score == 100){
System.out.println("恭喜满分!");
}else if(score <100 && score > 90){ // if多选择结构,else if语句
System.out.println("A级");
}else if(score <90 && score > 80){
System.out.println("A级");
}else if(score <80 && score > 70){
System.out.println("A级");
}else if(score <70 && score > 60){
System.out.println("A级");
}else if(score <60 && score > 0){
System.out.println("不及格");
}else{
System.out.println("违规输入");
}
scanner.close();
嵌套的if
if中还有if
switch多选择
匹配具体的值,可以int等(八大基本类型)或者string!(java7后)
写完case记得写break,防止穿透。default为所有条件都不匹配,则输出
System.out.println("判断string");
String grade = "C";
switch (grade){
case "A":
System.out.println("优秀");
break;
case "B":
System.out.println("良好");
break;
case "C":
System.out.println("及格");
break;
case "D":
System.out.println("再接再厉");
break;
case "E":
System.out.println("挂科");
break;
default:
System.out.println("未知等级");
}
System.out.println("判断char");
char cgrade = 'c';
switch (cgrade){
case 'a':
System.out.println("优秀");
break;
case 'b':
System.out.println("良好");
break;
case 'c':
System.out.println("及格");
break;
case 'd':
System.out.println("再接再厉");
break;
case 'e':
System.out.println("挂科");
break;
default:
System.out.println("未知等级");
}
反编译
打开Project Structure(3种方法)
ctrl + shift + alt + s
右上角设置按钮
file -> Project Structure
找到output目录下的class
资源管理器中打开目录,一直点点点相应文件夹,找到相对应的class文件
把class拖到.java所在文件夹,看一下反编译后的代码
视频里case判断string使用hash表,而我并没有变化=.=
三、循环结构 while dowhile
while
挺精巧,不要忘了i++
// 输出0-100
int i =0;
while (i < 100){
i++;
System.out.println(i);
}
do...while
当出现必须进行一次操作时,用do...while
// 计算1到100的总和
int i = 0;
int result = 0;
do {
i++;
result += i;
}while (i < 100);
System.out.println(result);
for
for (int i = 1; i<= 100; i++){
System.out.println(i);
}
// VS: while语句
int i =0;
while (i < 100){
i++;
System.out.println(i);
}
快捷键:100.for
增强for:
int[] numbers = {12,12,13,24,54,65};
for (int i: numbers){
System.out.print(i + " ");
}
四、break和continue
break【这个循环我不干了!】
跳出循环,主要用于switch。如果是for循环,则为跳出最近的for循环哦。
continue【这次循环不干了,所以continue嘛】
终止某次循环
for(int i = 0; i < 9; i++){
System.out.print(i);
if (i == 3) {
System.out.println();
continue;
}
System.out.println(" do something ");
}
continue outer; 用标签的continue
输出150以内的所有质数
outer:for (int i = 2; i <=150; i++){
for (int j = 2; j < i; j++){
if (i % j == 0) {
continue outer;
}
}
System.out.println(i);
}