안녕하세요.
우선 지난 시간에 했던 코드를 봅시다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | package study; import javax.swing.JOptionPane; public class Study01 { public static void main(String[] args) { String num = JOptionPane.showInputDialog("숫자를 입력하세요"); JOptionPane.showMessageDialog(null, num + 1); } } | cs |
언뜻 보기에는 문제가 없어 보이나 num이 문자형이라 제대로 된 덧셈이 되지 않는 문제가 있었죠.
그래서 지난번에 배운 형변환을 사용할 필요가 있습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | package study; import javax.swing.JOptionPane; public class Study01 { public static void main(String[] args) { String num = JOptionPane.showInputDialog("숫자를 입력하세요"); int num2 = Integer.parseInt(num); JOptionPane.showMessageDialog(null, num2 + 1); } } | cs |
11행이 핵심포인트! num을 정수형으로 변환하여 num2에 집어넣는거죠.
13행도 num을 num2로 고칩니다.
실행해서 올바로 출력되는지 확인해보세요~
자, 난이도를 살짝쿵 높여볼게요. 11행 속에 9행을 집어넣어서 한줄로 만드는거죠.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | package study; import javax.swing.JOptionPane; public class Study01 { public static void main(String[] args) { int num2 = Integer.parseInt(JOptionPane.showInputDialog("숫자를 입력하세요")); JOptionPane.showMessageDialog(null, num2 + 1); } } | cs |
형변환 명령어 속에 인풋박스 명령어가 들어간 형태입니다.
1+(3x(5-2))
위의 수학문제를 풀때 맨 안의 괄호부터 계산하듯이 명령어끼리 중첩되어 있을때도 맨 안에 있는 명령어부터 해석하는게 순서입니다.
사용자가 입력한 문자형 값을 정수형으로 바꾼 다음 num2 변수에 집어넣는다고 해석할 수 있습니다.
다음시간에는 이제까지 배운걸 응용해서 사용자가 출생년도를 입력하면 나이를 출력해주는 프로그램을 만들어보겠습니다.
감사합니다.
'자바로 게임 만들기' 카테고리의 다른 글
[자바로 게임 만들기] 15. if문으로 나이계산기 업그레이드 (0) | 2018.12.29 |
---|---|
[자바로 게임 만들기] 14. 나이 계산기 (6) | 2018.12.28 |
[자바로 게임 만들기] 12. 입력상자(인풋박스) (4) | 2018.12.28 |
[자바로 게임 만들기] 11. 자료형 변환(형변환) (3) | 2018.12.27 |
[자바로 게임 만들기] 10. 코드가 빙글빙글(for문) (4) | 2018.12.27 |