본문 바로가기
JavaPool(기초 로직연습)

단순 계산기 만들기 (CharAt()으로 String분리,Switch문 활용)

by Ms.Pudding 2022. 1. 8.

띄어쓰기로 파라메터 구분하여 입력시 계산하는 코드

2+2 오류 2 + 2 이런식으로 파라메터 입력값을 달리하여 입력했을 떄 계산해준다.

 

스트링을 문자로 분리할 때 , 리스트에 넣어줘서 값을 보관해준다.

switch문에서 break 안써주면 switch문에서 빠져나오지 못해 에러남 

temporary = ""; 를 만들어줘서 문자열을 저장할 수 있도록 한다 . 스트링은 문자열의 합이라서 에러가 나지 않는다. 

continue;를 만나면 temporary += c를 만나지않고 i++되서 for문을 다시 돌아간다. 

public class DoOp{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		String input = sc.nextLine();
		
		ArrayList<String> params = new ArrayList<String>();
		String temporary = ""; 
		for(int i=0;i<input.length();i++){
			char c = input.charAt(i); //String을 문자열로 하나하나 분리 
			//띄어쓰기로 파라메터 구분
			if(c==' '){
				params.add(temporary);
				temporary = ""; // 초기화
				continue;
			}
		temporary +=c; //temporary = temporary + c ;

		} 		
		params.add(temporary); // 마지막 파라메터는 띄어쓰기가
		없기 때문에 list에 안들어감. 그래서 새로 만듬
		
		int firstN = Integer.parseInt(params.get(0));
		int secondN = Integer.parseInt(params.get(2));
	int result =0;
	
	switch(params.get(1)) {
		case "+" : result = firstN + secondN;
			break;
		case "-" : result = firstN - secondN;
			break;
		case "*" : result = firstN * secondN;
			break;
		case "/" : result = firstN / secondN;
			break;
		case "%" : result = firstN % secondN;
			break;

            }
		System.out.println(result);

	}
}
 

댓글