반응형

Back end/Java

    [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..

    [JAVA] int, String배열의 오름차순, 내림차순 정렬 개념 및 예제(Arrays.sort(), Collections.reverseOrder())

    [JAVA] int, String배열의 오름차순, 내림차순 정렬 개념 및 예제(Arrays.sort(), Collections.reverseOrder())

    [배열의 선언 및 초기화] //배열의 선언과 크기 할당 int[] arr = new int[100]; //배열의 선언과 값 초기화 int[] arr = {10, 20, 30, 40, 50}; [java.util.Arrays] Java에서 배열의 값을 정렬하는 경우 java.util.Arrays 클래스를 활용한다. import java.util.Arrays; [↗배열 오름차순 정렬하기] Arrays.sort() 메소드를 활용하면 배열 값이 오름차순으로 정렬된다. Arrays.sort(arr); 소스 코드 import java.util.Arrays; import java.util.Collections; public class SortExample { public static void main(String[]..

반응형