# 題目
## a001
```
import java.util.Scanner;
public class a001 {
public static void main(String []args){
Scanner scanner = new Scanner(System.in);
String tmp = scanner.nextLine();
System.out.println("hello, " + tmp);
}
}
```
### 筆記
1. `nextLine`下一航輸入的資料。
## a002
```
import java.util.Scanner;
public class a002{
public static void main(String []args){
Scanner scanner = new Scanner(System.in);
String inputNum = scanner.nextLine();
String stringArry[] = inputNum.split(" ");
int totle = 0;
int numArry[];
numArry = new int [stringArry.length];
for (int i = 0; i < stringArry.length; i++) {
numArry[i] = Integer.parseInt(stringArry[i]);
}
for (int i = 0; i < numArry.length; i++){
totle += numArry[i];
}
System.out.println(totle);
}
}
```
### 筆記
1. `split(" ")`分割字串。
2. `nextInt`也可以使用
## a003
```
import java.util.Scanner;
public class a003{
public static void main(String []args){
Scanner scanner = new Scanner(System.in);
int M = scanner.nextInt();
int D = scanner.nextInt();
int S = (M*2+D)%3;
switch (S){
case 0:
System.out.println("普通");
break;
case 1:
System.out.println("吉");
break;
case 2:
System.out.println("大吉");
break;
}
}
}
```
### 筆記
1. 結構
```
switch (要判斷的變數){
case 0:
break;
case 1:
break;
case 2:
break;
}
```
## a004
```
import java.util.Scanner;
public class a004{
public static void main(String []args){
Scanner scanner = new Scanner(System.in);
int inputYear;
//多數人卡在這步驟hasNextInt(),被出現的"你執行了X行",或者使用true發生錯誤,我就卡在這XD。
while (scanner.hasNextInt()) {
inputYear = scanner.nextInt();
if((inputYear % 4 == 0 && inputYear % 100 != 0)||inputYear % 400 == 0){
System.out.println("閏年");
}else{
System.out.println("平年");
}
}
}
}
```
### 觀念
1. 題目條件直到 EOF 結束,為什麼一定要用`hasNextInt()`不能用`true`,因為題目提出關閉輸入時while會在重複一次,這樣審核系統會報錯,而`hasNextInt()`偵測到關閉就直接跳出迴圈。
```
您的程式被監控系統中斷,可能是程式無法正常結束所導致。
Exception in thread "main"
java.util.NoSuchElementException at
java.base/java.util.Scanner.throwFor(Scanner.java:937) at
java.base/java.util.Scanner.next(Scanner.java:1594) at
java.base/java.util.Scanner.nextInt(Scanner.java:2258) at
java.base/java.util.Scanner.nextInt(Scanner.java:2212) at
a004.main(a004.java:8) Exception in thread "main"
java.util.NoSuchElementException at
java.base/java.util.Scanner.throwFor(Scanner.java:937) at
java.base/java.util.Scanner.next(Scanner.java:1594) at
java.base/java.util.Scanner.nextInt(Scanner.java:2258) at
java.base/java.util.Scanner.nextInt(Scanner.java:2212) at
a004.main(a004.java:8)
```
### 筆記
1. `scanner.hasNextInt()`判斷下一行是否為數字。