본문 바로가기

전체 글221

Mockito 사용해보기 Mockito 사용해보기 Mockito는 자바에서 단위 테스트 코드를 작성할 때 많이 사용되는 Mock 프레임워크 중 하나입니다. Mock이란 진짜 객체와 비슷하지만, 프로그래머가 그 객체의 행동을 관리하는 가짜 객체를 말합니다. Mock을 사용하여 테스트 코드를 작성하면 객체가 어떤 행동을 할 때 프로그래머가 의도한 결과를 반환하도록 정의하여 사용할 수 있습니다. 그렇다면 Mock은 어떤 경우에 사용할까요? 만약 단위 테스트 코드를 작성하는데 애플리케이션에서 데이터베이스나 외부 API를 사용하는 경우, API 호출과 Repository 객체를 Mock으로 만들어 사용하면 외부 환경에 영향을 받지 않고 테스트를 수행할 수 있게 됩니다. Mockito 의존성 추가하기 스프링부트를 사용하는 경우 spring.. 2022. 4. 17.
[자바] String, StringBuffer, StringBuilder String String 타입은 자바에서 제공하는 문자열 타입으로 Immutable(불변) 하다는 특성을 가지고 있습니다. 이러한 특성 때문에 String 타입 문자열은 덧셈과 같은 연산이 일어나게 되면 매 연산마다 새로운 객체가 생성되게 됩니다. 예를 들어 다음과 같은 코드를 실행한다고 해봅시다. public class App { public static void main(String[] args) { String a = "Hello "; a += "World"; a += "!!"; System.out.println(a); //출력 : Hello World!! } } 얼핏 보면 단순히 "Hello " 문자열에 "World", "!!" 문자열이 더해져서 출력되는 것 같지만 ConstantPool을 살펴보.. 2022. 3. 21.
djb2 문자열 해시 함수 djb2는 문자열 해시 함수중 간단하면서 무작위 분포를 만드는데 뛰어나다고 알려져 있다. int djb2(char[] arr) { int hash = 5381; for (int i = 0; i < arr.length; i++) { hash = (((hash 2022. 3. 4.
[알고리즘/백준] 13460 구슬 탈출2 풀이 코드 - 삼성 SW 역량테스트 문제 https://www.acmicpc.net/problem/13460 풀이 코드 BFS를 통한 완전탐색으로 풀이 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; public class Main { static class State { int rx, ry; int bx, by; int moveCount; public State(int rx, int ry, int bx, int by, int moveCount) { this.rx = r.. 2022. 3. 2.
[프로그래머스] n진수 게임 - 자바(Java), 2018 KAKAO BLIND RECRUITMENT 문제 https://programmers.co.kr/learn/courses/30/lessons/17687 풀이 코드 정수를 특정 진법으로 변환한 문자열을 반환해 주는 convert()메서드를 사용해서 t번째 튜브의 순서가 포함된 숫자까지 구한 후, 튜브가 말해야 되는 순서의 숫자들을 문자열로 만들어 반환한다. public class Solution { public String solution(int n, int t, int m, int p) { StringBuilder sb = new StringBuilder(); //t번째 튜브의 순서 int limit = m*(t-1) + p; int i = 0; //t번째 튜브의 순서가 포함된 숫자까지만 구한다. while(sb.length() < limit) {.. 2022. 1. 12.