JUST GO
[Java] TEST1 본문
Q1. 다음 메서드를 만들어 보시오.
- 접근 제한자 : public
- 정적 : 네
- 반환 타입 : 정수 배열
- 이름 : filterNumbers
- 매개 변수 1 : 정수 배열
- 매개 변수 2 : 논리
- 하는 일 : '매개 변수1' 로 전달 받은 정수 배열에서 '매개 변수2'가 참이면 홀수만을, '매개 변수2'가 거짓이면 짝수만을 뽑아 뽑은 값들 만을 가지는 새로운 정수 배열로 만들어 반환
public class Main {
public static void main(String[] args) throws Exception {
int[] numbers = {1, 2, 3, 4, 5};
}
public static int[] filterNumbers(int[] numbers, boolean onlyOdds) {
// return Arrays.stream(numbers)
// .filter(x -> onlyOdds == (x % 2 != 0))
// .toArray();
// Stream API
int size = 0;
for (int number : numbers) {
if (onlyOdds && number % 2 != 0 || !onlyOdds && number % 2 == 0) {
size++;
}
}
int[] result = new int[size];
int index = 0;
for (int number : numbers) {
if (onlyOdds && number % 2 != 0 || !onlyOdds && number % 2 == 0) {
result[index++] = number;
}
}
return result;
}
}
// Stream API 위에 3줄이 밑에 모든 구문과 같은역할을 함.
// Stream API는 추가로 공부해두면 좋음.
Q2. 다음 메서드를 만들어 보시오.
- 접근 제한자 : public
- 정적 : 네
- 반환 타입 : int
- 이름 : pow
- 매개 변수 1 : int a
- 매개 변수 2 : int b
- 조건 :
- a 와 b는 0보다 크고 11보다 작은 정수이다.
- 하는 일 :
- a의 b승을 반환
- 사용 예 :
- sout(pow(3, 3)); // 27
- sout(pow(2, 10)); // 1024
/**
* 메인 클래스이다. 의미가 없음.
* @author 개발팀 과장 고근호(rmsgh1202@naver.com)
* @version 1.0.0
*/
public class Main {
//...
public static void main(String[] args) throws Exception {
System.out.println( pow(3,3) );
System.out.println( pow(2,10) );
System.out.println(pow(0,0));
}
/**
* 어떠한 수에 대한 제곱을 계산하여 반환한다.
* @param a 1 이상의 정수
* @param b 1 이상의 정수
* @return a의 b제곱
*/
public static int pow(int a, int b) {
int result = 1;
for(int i = 0; i < b; i++){
// b = 3
// i : 0, 1, 2
result *= a;
}
return result;
}
}
Q3. 아래 코드를 설명해보자.
public static int sum( int a, int b ) {
return a + b;
}
접근제한자 : public
정적 : O
반환타입 : int
이름 : sum
매개변수 : int a, int b
매개 변수 a와 b를 반환받는다.
Q4. 아래 코드를 설명해보자.
a.equals(b)
a.equals(b) 는 "메서드" 이다.
a는 String 타입의 "객체" 이다.
equals는 String의 "멤버"이다.
String은 "클래스" 이다.
!a.equals(b)
순서 1. a.equlas(b) 가 먼저 실행된다.
순서 2. ! 가 실행된다.
'Java > TEST' 카테고리의 다른 글
[Java] TEST6 (0) | 2022.10.20 |
---|---|
[Java] TEST5 (0) | 2022.10.19 |
[Java] TEST4 (0) | 2022.10.19 |
[Java] TEST3 (0) | 2022.10.19 |
[Java] TEST2 (0) | 2022.10.13 |