if (조건문) {
<수행할 문장1>;
<수행할 문장2>;
...
} else {
<수행할 문장A>;
<수행할 문장B>;
...
}
- 참과 거짓을 판단하는 문장이다.
boolean money = true;
if (money) {
...
}
- 우리가 아는 그것
- 우리가 아는 그것
- List 자료형에는 해당 아이템이 있는지 조사하는 contains 메소드가 존재한다. if 조건문에 활용이 가능하다.
ArrayList<String> packet = new ArrayList<String>();
packet.add("paper");
packet.add("headphone");
packet.add("money");
if (packet.contains("money")) { // boolean 타입을 반환한다.
System.out.println("택시를 타고 가라");
} else {
System.out.println("걸어가라");
}
- 우리가 아는 그것
switch(입력변수) {
case 입력값1: ...
break;
case 입력값2: ...
break;
...
default: ...
break;
}
public class Sample {
public static void main(String[] args) {
int month = 8;
String monthString = "";
switch (month) {
case 1: monthString = "January";
break;
case 2: monthString = "February";
break;
case 3: monthString = "March";
break;
case 4: monthString = "April";
break;
case 5: monthString = "May";
break;
case 6: monthString = "June";
break;
case 7: monthString = "July";
break;
case 8: monthString = "August";
break;
case 9: monthString = "September";
break;
case 10: monthString = "October";
break;
case 11: monthString = "November";
break;
case 12: monthString = "December";
break;
default: monthString = "Invalid month";
break;
}
System.out.println(monthString);
}
}
while (조건문) {
<수행할 문장1>;
<수행할 문장2>;
<수행할 문장3>;
...
}
- 우리가 아는 그것!
- 우리가 아는 그것!
- 우리가 아는 그것!
- 우리가 아는 그것
- 우리가 아는 그것
- continue , break 모두 while 문과 동일하게 사용할 수 있다.
- 우리가 아는 그것
- J2SE 5.0 부터 추가된 기능, 조건식 문법이 다소 다르고 for문을 활용한다.
// 기존의 forans
String[] numbers = {"one", "two", "three"};
for (int i = 0; i < numbers.length; i++) {\
System.out.println(numbers[i]);
}
//for each 문
String[] numbers = {"one", "two", "three"};
for (String number:numbers) {
System.out.println(number);
}
- 해당 구문의 구조는 다음처럼 되어 있다.
for (type var: iterate) {
body-of-loop
}
- iterate 루프를 돌릴 객체가 var 에 들어가며, iterate 객체에서 순차로 대입하여 for문을 수행한다. 즉, 반복자가 구현된 자료형(배열 및 ArrayList 등)만 사용이 가능하다.
- 단 반복회수를 명시해주는 것은 불가능, 1스텝씩의 순차적 반복에서만 사용이 가능하다.
Q5 ) A 학급에 총 10명의 학생이 있다. 이 학생들의 중간고사 점수는 다음과 같다.
int[] marks = {70, 60, 55, 75, 95, 90, 80, 80, 85, 100};
for each 문을 사용하여 A 학급의 평균 점수를 구해 보자.
public class Sample {
public static void main(String[] args) {
int[] marks = {70, 60, 55, 75, 95, 90, 80, 80, 85, 100};
ArrayList<Integer> newMarks = new ArrayList<>();
for (int i = 0; i < marks.length; i++) {
newMarks.add(marks[i]);
}
System.out.println(newMarks);
Integer Avg = 0;
for (Integer number:newMarks) {
Avg += number;
}
Avg /= marks.length;
System.out.print("평균 값 : ");
System.out.println(Avg);
}
}