java 반복문 str.repeat(count)

뿌이·2022년 11월 17일
0

Java 개념

목록 보기
7/19
public class Repeat {
	public static void main(String[] args) {
		// String 및 StringBuilder 호출
		String str = "Hello";
		StringBuilder sb = new StringBuilder();
		
		// 반복문을 사용하여 문자열 반복
		for(int i = 0; i < 3; i++)
		{
			sb.append(str);
		}
		
		// 결과 출력 -> for문
		System.out.println("for문 : " + sb);
		// 결과 출력 -> repeat 사용
		System.out.println("repeat문 : " + str.repeat(3));
	}
}

repeat 문을 사용하면 문자열을 쉽게 반복할 수 있다.
하지만 repeat문은 아쉽게도 자바 11버전부터 사용할 수 있다.

반복문 안좋은습관1

public void example(List<Integer> numbers) {
    for (int i = 0; i < numbers.size(); i++) {
        ...
    }
}

numbers의 size를 for문 돌때마다 체크하기때문에 매우 안좋음

해결방안 1

public void example(List<Integer> numbers) {
    int numbersSize = numbers.size();
    for (int i = 0; i < numbersSize; i++) {
        ...
    }
}

해결방안 2

public void example(List<Integer> numbers) {
    for (int number : numbers) {
        ...
    }
}

결론

반복문은 어떤 애플리케이션을 개발하더라도 반드시 사용해야 하는 부분이다. 성능에 영향을 미치는 큰 요소인 만큼 불필요한 반복이 있지 않은지, 최선의 반복문인지 항상 고민해야 한다고 생각한다. 성능의 차이가 미미할지라도 어떤 상황에서는 큰 영향을 미칠지 모른다. 이 글의 내용을 참고해서 상황에 따라 어떤 반복문을 사용하면 좋을지 항상 고민해보는 습관을 지니면 좋을 것 같다.

profile
기록이 쌓이면 지식이 된다.

1개의 댓글

comment-user-thumbnail
2023년 2월 21일

안녕하세요.
List 구현체마다 차이는 있겠으나, 주로 사용되는 ArrayList, LinkedList 는 내부에 size 를 변수로 가지고 있기 때문에 size() 호출 시 마다 실제 길이를 체크하는 부하는 없습니다. 대부분의 List 구현체가 size() 호출에 대해 최적화를 해놓았으니 걱정말고 쓰셔도 됩니다.

답글 달기

관련 채용 정보