[코드트리] 모양대로 숫자 출력하기 4 [난이도 : Bronze 4 / 문제유형 : Iteration]
·
◈ Coding Test/코드트리🌳
코드트리 | 코딩테스트 준비를 위한 알고리즘 정석 국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요. www.codetree.ai - 문제풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = Integer.parseInt(sc.nextLine()); int cnt = 1; for(int i = 0 ; i < n ; i++) { for(int j = 0 ; j < n ; j++) { if(i
[JAVA] 자바(Java)에서 운영체제 인코딩 확인하는 방법 [내 OS는 어떤 인코딩을 쓰고 있을까?]
·
◎ Java/Java☕
- 자바(Java)에서 OS 인코딩 확인하는 방법 //아래 구문을 출력하면 시스템의 인코딩을 확인할 수 있다. System.getProperty("file.encoding") - 참고자료 자바로 OS의 인코딩(Character Set) 확인 해 보기 아래와 같이 테스트 할 클래스를 하나 만들어줍니다. import java.io.*; public class EncodingTest { public static void main(String[] args) throws Exception { System.out.println("file.encoding="+System.getProperty("file.encoding")); System. byeonely.tistory.com
[GoF] Strategy 패턴 : 알고리즘을 모두 바꾼다 [같은 문제를 다른 방법으로 해결하기 쉽게 만들어주는 패턴]
·
◈ Study/디자인패턴(GoF)🥞
- Strategy 패턴 : 알고리즘을 모두 바꾼다 Strategy 패턴은 스위치 전환하듯 알고리즘을 바꿔, 같은 문제를 다른 방법으로 해결하기 쉽게 만드는 패턴이다. - 어떤 경우에 사용할까? 보통 프로그래밍을 하다 보면 알고리즘을 메서드 안에 녹아드는 형태로 구현하기 쉬운데, Strategy 패턴을 사용하면 알고리즘 부분을 다른 부분과 의도적으로 분리한다. 이로 인해 알고리즘을 용이하게 전환할 수 있다. - 예제 코드 이름 설명 Hand 가위바위보의 '손'을 나타내는 클래스 Strategy 가위바위보의 '전략'을 나타내는 인터페이스 WinningStrategy 이기면 다음에도 같은 손을 내는 전략을 나타내는 클래스 ProbStrategy 직전 손에서 다음 손을 확률적으로 계산하는 전략을 나타내는 클래..
[GoF] Bridge 패턴 : 기능 계층과 구현 계층을 나눈다 [기능의 클래스 계층과 구현의 클래스 계층을 연결하는 패턴]
·
◈ Study/디자인패턴(GoF)🥞
- Bridge 패턴 : 기능 계층과 구현 계층을 나눈다 Bridge 패턴은 '기능의 클래스 계층'과 '구현의 클래스 계층'이라는 두 개의 독립된 클래스 계층을 나누고, 두 계층을 연결하는 패턴이다. 계층을 분리해두면 각각의 클래스 계층을 독립적으로 확장할 수 있다. - 어떤 경우에 사용할까? Bridge 패턴의 특징은 '기능의 클래스 계층'과 '구현의 클래스 계층'을 분리하는 것이다. 기능을 추가하고 싶으면 기능의 클래스 계층에 클래스를 추가하면 되고, 구현의 클래스 계층은 전혀 수정할 필요가 없어진다. - 예제 코드 다리의 어느 쪽인가? 이름 설명 기능의 클래스 계층 Display '표시한다' 클래스 기능의 클래스 계층 CountDisplay '지정 횟수만큼 표시한다' 기능을 추가한 클래스 구현의 클..
[Spring] @Autowired 옵션 처리 방법 [주입할 스프링 빈이 없어도 동작해야 할 때]
·
▣ Framework/Spring🍃
- 주입할 스프링 빈이 없어도 동작해야 할 때 주입할 스프링 빈이 없어도 동작해야 할 때가 있다. 자동 주입 대상이 없는 상태로 @Autowired만 사용하면 required의 기본값이 true라 오류가 발생한다. - @Autowired 옵션 처리 방법 @Autowired(required=false) : 자동 주입할 대상이 없으면 수정자 메서드 자체가 호출 안됨 @Nullable : 자동 주입할 대상이 없으면 null이 입력됨 Optional : 자동 주입할 대상이 없으면 Optional.empty 가 입력됨 //호출 안됨 @Autowired(required = false) public void setNoBean1(Member member) { System.out.println("setNoBean1 = ..