My footsteps
토요스터디 / 9주차 본문
728x90
< 프로그래머스 코테 문제들 >
//이스케이프문자를 이용한 문자 출력
//작은,큰따옴표와 역슬래쉬를 문자로 출력하려면 그 문자들 앞에 역슬래쉬를 하나 붙여준다
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
System.out.println("!@#$%^&*(\\\'\"<>?:;");
}
}
//두 정수 a, b가 주어질 때 다음과 같은 형태의 계산식을 출력하는 코드를 작성해 보세요.
//형식지정자 %d를 활용하는 문제
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();
System.out.printf("%d + %d = %d",a,b,a+b);
}
}
//문자열 합치기
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String a = sc.next();
String b = sc.next();
String result = a+b;
System.out.println(result);
}
}
//문자열 세로 방향으로 출력하기
//charAt()메서드 사용
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String a = sc.next();
for (int i = 0; i < a.length(); i++) {
System.out.println(a.charAt(i));
}
}
}
//짝,홀수일때 다른 문자열 출력하기
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
if(n%2==1){
System.out.println(n+" is odd");
}else{
System.out.println(n+" is even");
}
}
}
//대소문자 바꿔서 출력하기
Scanner sc = new Scanner(System.in);
String str = sc.next();
String answer = "";
for (int i = 0; i < str.length(); i++) {
if (Character.isUpperCase(str.charAt(i))) {
answer += Character.toLowerCase(str.charAt(i));
} else {
answer += Character.toUpperCase(str.charAt(i));
}
}
System.out.println(answer);
위 코드에서 answer += Character.toLowerCase(str.charAt(i)); 또는 answer += Character.toUpperCase(str.charAt(i));와 같은 코드를 보면, += 연산자를 사용하여 문자열에 다른 문자열을 덧붙이는 것을 볼 수 있습니다.
이때 ""는 빈 문자열을 나타내는 것으로, answer 변수가 초기화된 값이 없을 때에도
이러한 연산을 수행할 수 있도록 빈 문자열로 초기화해주는 역할을 합니다.
즉, answer += Character.toLowerCase(str.charAt(i));와 같은 코드는 answer 변수에 이전의 문자열 값에 대문자를 소문자로 바꾼 문자를 덧붙인 새로운 문자열을 할당하는 것입니다.
따라서 answer 변수가 초기화된 값이 없더라도 이전 문자열 값과 새로운 문자열 값을 더해서 새로운 문자열 값을 만들 수 있도록, ""로 초기화합니다.
예를 들어, str 변수에 "Hello"라는 문자열이 입력되었다면, answer 변수가 빈 문자열인 초기 상태에서 for 루프가 실행되면서 첫 번째 문자 'H'를 읽어들입니다. 이때 answer 변수는 빈 문자열인 상태이므로, answer += Character.toLowerCase(str.charAt(i)); 구문은 "h"가 됩니다.
이후에 for 루프에서 다시 두 번째 문자 'e'를 읽어들일 때에는, answer 변수에 이전 문자열 값인 "h"에 현재 문자열 값인 "E"를 더해서 "hE"가 되는 식으로 문자열을 구성합니다.
따라서 ""은 문자열을 초기화할 때 사용되는 빈 문자열을 나타내는 것으로, 문자열에 문자를 더하는 += 연산자를 사용할 때 이전 문자열 값과 새로운 문자열 값을 더해서 새로운 문자열 값을 만들 수 있도록 초기화하는 역할을 합니다.
728x90
'Develop > 곤부📙' 카테고리의 다른 글
일요일 혼공 / (프로그래머스 코딩테스트) (0) | 2023.04.23 |
---|---|
HTTP / 8주차 (0) | 2023.04.22 |
getter / setter (0) | 2023.04.21 |
토요스터디 / 8주차 (0) | 2023.04.15 |
CS 스터디 (0) | 2023.04.11 |