코딩테스트 기초 - String 1. 문자찾기

고장난 고양이·2022년 3월 23일
0

codingtest-java

목록 보기
4/21

코딩테스트 기초 자바

1. 문자 찾기

문제

설명

한 개의 문자열을 입력받고, 특정 문자를 입력받아 해당 특정문자가 입력받은 문자열에 몇 개 존재하는지 알아내는 프로그램을 작성하세요.

대소문자를 구분하지 않습니다.문자열의 길이는 100을 넘지 않습니다.

입력

첫 줄에 문자열이 주어지고, 두 번째 줄에 문자가 주어진다.

문자열은 영어 알파벳으로만 구성되어 있습니다.

출력

첫 줄에 해당 문자의 개수를 출력한다.

예시 입력 1

Computercooler
c

예시 출력 1

2

코드

import java.util.Scanner;
  
public class Main {
   public int solution(String str, char t){
        int answer=0;
        String strLow = str.toLowerCase();
        char t2=Character.toLowerCase(t);
        for( int i=0; i<strLow.length();i++){
            if(strLow.charAt(i)==t2){
                answer+=1;
            }
        }
        return answer;
    }
  public static void main(String[] args){
    Main T = new Main();
    Scanner kb=new Scanner(System.in);
    String str=kb.next();
    char c=kb.next().charAt(0);
    System.out.print(T.solution(str, c));
  }
}

사용 문법

  • 문자열 소문자로 맞추기

    String str2= str1.toLowerCase();

  • 문자열 대문자로 맞추기

    String str2= str1.toUpperCase();

  • Char 소문자로 맞추기

    Char c2= Character.toLowerCase(c1);

  • Char 대문자로 맞추기

    Char c2= Character.toUpperCase(c1);

더나은 코드

import java.util.*;
class Main{	
	public int solution(String str, char t){
		int answer=0;
		str=str.toUpperCase();
		t=Character.toUpperCase(t);
		//System.out.println(str+" "+t);
		/*for(int i=0; i<str.length(); i++){
			if(str.charAt(i)==t) answer++;
		}*/
		for(char x : str.toCharArray()){
			if(x==t) answer++;
		}
		return answer;
	}

	public static void main(String[] args){
		Main T = new Main();
		Scanner kb = new Scanner(System.in);
		String str=kb.next();
		char c=kb.next().charAt(0);
		System.out.print(T.solution(str, c));
	}
}

for 문 차이 str을 toCharArray()를 통해 문자 어레이로 만들어서 한나하나 비교할 수 있다.

profile
개발새발X발일지

0개의 댓글

관련 채용 정보