# 각 자리수의 합 #### CODE <a class='btn btn-default' href='/codes/18959'>Link</a> ``` public class SumDigits { public static void main(String[] args) { /* 1. 변수 생성 */ int num = 374; int a = num / 100; int b = (num - 300) / 10; int c = num % 10; /* 2. 계산 */ int sum =a+c+b; /* 3. 출력 */ System.out.println("총합: " + a + b + c); } } ``` #### INPUT ``` ``` #### OUPUT ``` 총합: 374 ``` 마지막 System.out.println("총합: " + a + b + c); 에서는 합산이 안되고, 왜 문자열로 인식해서 374로 나열이 되나요?? 하지만, System.out.println(a + b + c); 이렇게 하면 합산이 됩니다. 어떤이유인가요??
# 문자열 더하기 숫자는, 문자열입니다. 때문에, 질문의 결과가 "총합: 374"가 됩니다. ``` System.out.println("총합: " + a + b + c); // => "총합: 3" + b + c // => "총합: 37" + c // => "총합: 374" ``` ## 해결법 괄호를 사용하여 숫자를 먼저 더해보세요. ``` System.out.println("총합: " + (a + b + c)); // 총합: 14 ```