일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 시큐리티로그인
- html
- input태그
- 리눅스
- security
- 시큐리티
- Linux
- 소스트리
- 시큐리티 로그아웃
- 싱글톤
- JAVA11
- javascript
- 목록
- 프로그래머스
- css
- Spring boot
- codingtest
- gradle
- sql
- 반복문
- StyleSheet
- 로그인
- 2차원배열
- springSecurity
- 시큐리티 로그인
- springboot
- java
- programmers
- 스프링 부트
- 코딩테스트
Archives
- Today
- Total
JAVAIARY
조건문, 반복문, 삼항연산자, 배열, 2개리턴 본문
예제 1)
* switch 조건문
* 사용자가 자신의 연령대를 입력하면 해당 연령대에 맞는 책을 추천하는 코드를 만들어 보시오.
public static void main(String[] args) {
int age;
Scanner scan = new Scanner(System.in);
System.out.println("연령대를 입력하세요.");
age = scan.nextInt();
// 사용자 입력 예외처리
if ((age<10)||(age>=11 && age <20)||(age>=21 && age <30)||(age>=31 && age <40)||
(age>=41 && age <50)||(age>=51 && age <60)) {
System.out.println("연령대는 10,20,30,40,50,60 중에서 입력해주세요. 프로그램을 종료합니다.");
System.exit(0);
}
// 반복문
switch (age) {
case 10:
System.out.println(age+ "대 추천 매대는 A 구역입니다.");
break;
case 20:
System.out.println(age+ "대 추천 매대는 B 구역입니다.");
break;
case 30:
System.out.println(age+ "대 추천 매대는 C 구역입니다.");
break;
case 40:
System.out.println(age+ "대 추천 매대는 D 구역입니다.");
break;
case 50:
System.out.println(age+ "대 추천 매대는 E 구역입니다.");
break;
case 60:
System.out.println(age+ "대 추천 매대는 F 구역입니다.");
break;
default:
System.out.println("70대 이상 추천 매대는 G 구역입니다.");
}
scan.close();
}
- System.exit(0) : 프로그램 종료하고 이후 코드를 실행하지 않음
예제2) -1 삼항연산자
* 조건식 ? 결과1 : 결과2
* 10보다 작거나 같으면 100을 곱하시오
int num = scan.nextInt();
int result = num <= 10 ? num *100: 1;
System.out.println(result);
예제 2) - 2 삼항연산자
* 삼항연산자를 이용하여 12시보다 작으면 오전, 크면 오후를 출력하도록 구현해보시오.
Scanner scan = new Scanner(System.in);
System.out.println("시간을 입력하세요(1~24)");
int hour = scan.nextInt();
String hourFix =
(hour <= 12 && hour >=1) ? "오전" + hour + "시 입니다.":
(hour >12 && hour <=24 )? "오후" + hour + "시 입니다.":"시간 설정 오류입니다.";
System.out.println(hourFix);
- 삼항연산자 이용시 받아주는 변수의 타입을 주의할 것!!
- 삼항연산자 이용시 받아주는 참조변수 없이 sysout 을 사용하여 바로 출력은 불가능( return 값이 sysout이 될 수 없음)
- 출력 함수 안에 삼항연산자 작성은 가능
예제 3) 배열
다중배열 선언
int[] a, b c;
int d[], e[], f[];
배열의 복사
int[] arr1= {1,2,3,4,5};
int[] arr2= {1,2,3,4,5,6,7,8,9,10};
System.arraycopy(arr1, 1, arr2, 5, 2);
int[] arr3 = arr2.clone();
int[] arr4 = Arrays.copyOfRange(arr2, 5, 9);
int[] arr5 = Arrays.copyOf(arr2, 3);
System.out.println(Arrays.toString(arr2));
System.out.println(Arrays.toString(arr3));
System.out.println(Arrays.toString(arr4));
System.out.println(Arrays.toString(arr5));
출력값
[1, 2, 3, 4, 5, 2, 3, 8, 9, 10]
[1, 2, 3, 4, 5, 2, 3, 8, 9, 10]
[2, 3, 8, 9]
[1, 2, 3]
예제 4)
* static선언이 되어있지 않은 메서드를 사용하는 코드를 구현하시오.
public class TestStatic {
public void helloWorld() {
System.out.println("Hello World!");
}
public TestStatic() {
helloWorld();
}
public static void main(String[] args) {
TestStatic ts = new TestStatic();
}
}
public class TestStatic {
public void helloWorld() {
System.out.println("Hello World!");
}
public static void main(String[] args) {
TestStatic ts2 = new TestStatic();
ts2.helloWorld();
}
}
예제 5)
* 2개의 정수형을 리턴하는 메서드를 구현하시오.
public static int[] ReturnTwo(int num1, int num2) {
return new int[] {num1, num2};
}
- 배열을 이용하여 반환해 줌
- (int num1, int num2) 와 같은 매개변수 없이 메서드 내부에서 초기화 해 주는 것도 가능
public static void main(String[] args) {
int[] R2 = ReturnTwo(20, 30);
System.out.println(Arrays.toString(R2));
System.out.println(R2[0]+", " + R2[1]);
}
- 출력해서 확인
'examplePractice' 카테고리의 다른 글
프로그래머스) lv.2 올바른 괄호 (0) | 2023.01.23 |
---|---|
함수 (0) | 2022.12.15 |
반복문, 배열 (0) | 2022.10.02 |
반복문, 배열 (0) | 2022.10.02 |
반복문 연습 1 (0) | 2022.08.21 |