LV1. 직사각형 별찍기

❔ 문제

❗ 내 풀이

import java.util.Scanner;

class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();

        for(int i = 0; i < b; i++){
            for(int j = 0; j < a; j++){
                System.out.print("*");
            }
            
            System.out.println("");
        }
    }
}

🚩참고 (다른 풀이)

1.
import java.util.Scanner;
import java.util.stream.IntStream;

public class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt(); 

        StringBuilder sb = new StringBuilder();	
        IntStream.range(0, a).forEach(s -> sb.append("*"));
        IntStream.range(0, b).forEach(s -> System.out.println(sb.toString()));
    }
}


2.
import java.util.Scanner;

public class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        StringBuilder sb = new StringBuilder();		// StringBuilder로도 풀 수 있구나.
        for(int i=0; i<a; i++){
            sb.append("*");
        }
        for(int i=0; i<b; i++){
            System.out.println(sb.toString());
        }
    }

📝 정리

💬 1. 이중 for문이 아닌 IntStream 사용해서 풀 수 있다.
💬 2. StringBuilder의 append 기능 사용해서도 별 찍을 수 있다.

StringBuilder 개념 정리하기
IntStream 개념 정리하기(api, 람다식...)


좋은 웹페이지 즐겨찾기