
toUpperCase & trim
📑문제
⭕정답
11
🔍풀이
package jokun.KH.test0630;
import java.util.Arrays;
public class Ex01 {
public static void main(String[] args) {
int a = 1;
int b = Arrays.asList(100, 200).size();
int c = Long.valueOf(3L).intValue();
if (a + b == c && (c - a) % 2 ==0){
System.out.println(method1()[0]);
}
}
private static String[] method1() {
String[] array = new String[1];
StringBuilder sb = new StringBuilder();
sb.append("1 ".trim());
sb.append(sb.toString().toUpperCase());
array[0] = sb.toString();
return array;
}
}
private & getter/setter
📑문제
⭕정답
AA
🔍풀이
사실 자식 클래스에 public이 붙어있으면 부모 클래스 바로 밑에 클래스를 작성할 수 없고, 해당 클래스 이름으로 된 .java파일이 있어야 한다. 그리하여 문제 코드대로 쓰면 컴파일 에러가 뜨기에 public을 제외하고 class로 작성한 경우로 풀어보기로 함!
package jokun.KH.test0630;
public class Ex02 {
private static String str1 = "A";
public static String concatStr(String str1, String str2) {
return new StringBuilder()
.append(str1)
.append(str2)
.toString();
}
public static String getStr1() {
return str1;
}
}
class Ex02_1 extends Ex02 {
public static void main(String[] args) {
getStr1().toLowerCase();
Ex02_1 instance = new Ex02_1();
instance.method1();
}
private void method1() {
System.out.println(concatStr(getStr1(),getStr1()));
}
}
LocalDateTime &getYear
📑문제
⭕정답
2020
🔍풀이
package jokun.KH.test0630;
import java.time.LocalDateTime;
import java.util.function.Predicate;
public class Ex03 {
public static void main(String[] args) {
LocalDateTime ldt1 = LocalDateTime.of
(2020, 01, 01, 12, 34, 56);
if (!isLocalDateTime(ldt1)){
return;
}
if (!isLocalDateTime(ldt1)){
System.exit(1);
}
System.out.println(ldt1.getYear());
}
public static boolean isLocalDateTime(LocalDateTime ldt){
Predicate<LocalDateTime> pridicate = new Predicate<LocalDateTime>() {
@Override
public boolean test(LocalDateTime e) {
return e instanceof LocalDateTime;
}
};
return pridicate.test(ldt);
}
}
Optional & ofNullable & ofElse
📑문제
⭕정답
output
🔍풀이
package jokun.KH.test0630;
import java.util.HashMap;
import java.util.Optional;
public class Ex04 {
public static void main(String[] args) {
HashMap<Object, String> map = new HashMap<>();
map.put(1L, "A");
map.put(null, "b");
map.put("String", null);
Ex04 instance = new Ex04();
instance.method1(map.get("String"));
}
public void method1(Object object) {
Optional<Object> a = Optional.ofNullable(object);
System.out.println(a.orElse("output"));
}
}
Consumer & accept()
📑문제
⭕정답
12
🔍풀이
package jokun.KH.test0630;
import java.util.Arrays;
import java.util.List;
import java.util.function.Consumer;
public class Ex05 {
private Long a;
public Long getA() {return a;}
public void setA(Long a) {this.a = a;}
}
public class Ex05_1{
public static void main(String[] args) {
Ex05 a = new Ex05();
Ex05 b = new Ex05();
a.setA((long) 1);
a.setA(Long.valueOf(2));
List<Ex05> list = Arrays.asList(a, b);
method1(list);
}
public static void method1(List<Ex05> list) {
list.forEach(new Consumer<Ex05>() {
@Override
public void accept(Ex05 object) {
System.out.print(object.getA());
}
});
}
}
Consumer : 함수형 인터페이스
리턴값이 없는 accept() 메서드를 가지고 있다.
매개 값(인자)을 받아서 소비(처리)하는 역할만 하며, 사용만 하고 리턴 값이 없다.
인터페이스 추상 메서드 설명 Consumer<T> void accept(T t) 객체 T를 받아 소비
람다랑 같이 쓰면 찰떡!
'Backend > JAVA' 카테고리의 다른 글
[JAVA] 특강 8일차 : ID/PW확인하여 로그인(Login)하기 (0) | 2022.07.03 |
---|---|
[JAVA] 특강 10일차 : 넌센스 퀴즈 뷰어 & TO DO LIST 만들기 (0) | 2022.07.03 |
[JAVA] 특강 8일차 : 정규식 & 정규 표현식 & matches (0) | 2022.07.03 |
[JAVA] 특강 8일차 : 자바 문제풀이 & 코드리뷰 (0) | 2022.06.29 |
[JAVA] 특강 7일차 : 자바 문제풀이 & 코드리뷰 (0) | 2022.06.29 |