반응형

Back end

    [Java] Scanner 클래스의 next()와 nextLine() 차이

    Scanner 클래스 공백 문자(white-space)를 기준으로 입력 데이터를 나눕니다. 공백 문자(white-space): 공백(space), 탭(tab), 엔터(\n) 등 sc.next()와 sc.nextLine()은 모두 문자열을 반환하지만 아래와 같은 차이점이 있습니다. sc.next() 공백(space)을 기준으로 입력받습니다. 이는 개행문자(Enter)를 무시하고 입력받기 때문입니다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 동대문 엽기떡볶이 while(sc.hasNext()){ System.out.print..

    [Java] Stream.distinct() 중복 제거

    Stream.distinct() Stream의 distinct() 메서드는 컬렉션의 요소에서 중복을 제거하여 반환합니다. 예제. distinct() 메서드 활용하여 중복된 과일 제거 후 출력하기 import java.util.Arrays; import java.util.List; public class Main { public static void main(String[] args) { String[] StringArray = new String[]{"딸기", "딸기", "당근", "참외", "메론", "메론"}; List list = Arrays.asList(StringArray); List distinctList = list.stream().distinct().toList(); distinctList..

    [Java] Stream의 filter() 메소드 (ft.collect())

    filter() - 컬렉션에서 조건에 맞는 요소만 뽑아 새로운 스트림을 생성합니다. (필터링 기능) - collect()와 같이 사용하여 조건에 맞는 새로운 리스트를 만들 수 있습니다. 예제. 리스트에서 30보다 큰 값을 뽑아 새로운 리스트로 만들기 1. 기존 방식 import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; public class Main { public static void main(String[] args) { Integer[] arr = new Integer[]{10, 20, 30, 40, 50}; List list = Arrays.asList..

    [Java] for-loop를 Stream forEach로 변경하기

    아래와 같이 list의 모든 값을 for-loop로 순회하는 코드가 있습니다. import java.util.ArrayList; import java.util.List; public static void main(String[] args) { List list = new ArrayList(); list.add("딸기"); list.add("당근"); list.add("수박"); list.add("참외"); list.add("메론"); for(int i = 0; i < list.size(); i++){ System.out.println(list.get(i)); } } 이러한 코드를 Stream의 forEach을 활용하여 간결하게 바꿀 수 있습니다. forEach : 컬렉션의 요소들을 하나씩 꺼내어 반복한다..

    [Java] Array(배열) 객체 복사하기

    배열을 복사하는 방법 (얕은 복사 / 깊은 복사) 얕은 복사(Shallow Copy) - 복사한 배열이 원래 배열의 '주솟값'을 가져옵니다. - 복사한 배열이나 원본배열이 변경될 때 서로 간의 값이 같이 변경됩니다. 깊은 복사(Deep Copy) - 복사한 배열이 원래 배열을 '값'을 가져옵니다. - 복사한 배열이나 원본배열이 변경될 때 서로 간의 값은 바뀌지 않습니다. 얕은 복사 아래와 같은 arr 배열이 있습니다. 해당 배열을 복사하여 arrNew를 만들어 보려고 합니다. int[] arr = {0, 1, 2, 3, 4}; 간단하게 아래와 같이 생각할 수 있습니다. int[] arr = {0, 1, 2, 3, 4}; int[] arrNew = arr; 그러나 위와 같이 배열을 복사할 경우 복사한 배열..

    [Java] 배열을 문자열로 만드는 메서드 join (예제 포함)

    프로그래머스에서 배열을 문자열로 반환하는 문제를 접하였습니다. 문제 설명 문자들이 담겨있는 배열 arr의 원소들을 순서대로 이어 붙인 문자열을 return 하는 문제입니다. 입출력 예 arr result ["a","b","c"] "abc" 저는 해당 문제를 for문을 활용해서 풀었지만, 다른 사람의 풀이를 보니 join이라는 메서드를 활용하여 간단하게 풀이한 것을 보았습니다. 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr join() 이란? String.join(구분기호, 요소) 각 요소에 구분자를 넣어 하나의 문자열로 반환합니다. 구분 기호 또는 조인할..

    [Java] 문자열 반복 메서드 repeat (예제 포함)

    [Java] 문자열 반복 메서드 repeat (예제 포함)

    프로그래머스에서 입력받은 문자열을 일정 횟수만큼 반복하여 출력하는 문제를 접하였습니다. 문제 설명 문자열 str과 정수 n이 주어질 때, str이 n번 반복된 문자열을 만들어 출력하는 코드를 작성하는 문제입니다. 입출력 예 입력 #1 string 5 출력 #1 stringstringstringstringstring 저는 해당 문제를 for문을 활용해서 풀었지만, 다른 사람의 풀이를 보니 repeat이라는 메서드를 활용하여 간단하게 풀이한 것을 보았습니다. 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문자열 반복 메소드 repeat() 이란? String..

    Swagger2 사용하여 RESTful API 문서 자동화하기 (Feat.egovframework 전자정부프레임워크)

    Swagger2 사용하여 RESTful API 문서 자동화하기 (Feat.egovframework 전자정부프레임워크)

    Swagger란? 개발한 API를 사용자에게 제공하도록 하는 Web API 문서화 도구로 쓰입니다. Swagger를 사용하면, @어노테이션과 코드 설정을 통해 간단하게 API를 문서화 및 테스트가 가능한 UI를 제공하여 별도의 문서를 만들 필요 없이 Restful서비스의 문서작성과 유지보수에 대한 효율성을 높일 수 있습니다. 전자정부프레임워크(egovframework)에서 Swagger 적용하기 구글링을해보면 전부 스프링부트에서 Swagger를 적용하는 방법이어서, 전자정부를 사용하는 저는 Swagger를 구현하는데 많은 난관이 있었습니다. 그럼, 전자정부프레임워크에서 적용하는 방법을 알아보겠습니다. 1. pom.xml에 Maven dependency 추가 ... io.springfox springfox..

반응형