1. 변수를 사용하는 이유
1) 반복되는 값을 쉽게 관리하기 위해서
package day05;
public class WhyVar {
public static void main(String[] args) {
//같은 값 10개를 모두 수정해야하는 상황일 때,
//10번 모두를 직접 작성한 경우 모두 변경해야하나
System.out.println("안녕하세요!! 반갑습니다");
System.out.println("안녕하세요!! 반갑습니다");
System.out.println("안녕하세요!! 반갑습니다");
System.out.println("안녕하세요!! 반갑습니다");
System.out.println("안녕하세요!! 반갑습니다");
System.out.println("안녕하세요!! 반갑습니다");
System.out.println("안녕하세요!! 반갑습니다");
System.out.println("안녕하세요!! 반갑습니다");
System.out.println("안녕하세요!! 반갑습니다");
System.out.println("안녕하세요!! 반갑습니다");
//변수를 사용하면 내용 수정을 위해서 변수값만 변경해주면 됨
String WhyVarable = "안녕하세요!! 반갑습니다";
for(int i = 0; i < 10; i++) {
System.out.println(WhyVarable);
}
}
}
2) 값에 의미 부여를 하기 위해서
int age = 1; //변수명으로 나이라는 것을 알 수 있음
int a = 1; //변수명을 봐도 전혀 알 수 없음
2. 입력 메소드
* 입력상태
: 커서가 깜빡이고 있는 상태.
커서만 깜빡이면 어떤 값을 입력해야할지
모르기 때문에 반드시 출력을 먼저 해준다.
Scanner sc = new Scanner(System.in);
* next() : 공백 혹은 줄바꿈 문자를 기준으로 값을 분리한다.
예) 홍 길동
sc.next() : "홍"
sc.next() : "길동"
* nextLine() : 입력한 값들 모두 그대로 가지고 온다.(구분점 X)
엔터도 값이기 때문에 nextLine() 위에서 무언가를
입력받을 때에는 반드시 엔터를 상쇄시켜주어야 한다
예) 홍 길동
sc.nextLine() : "홍 길동"
3. 오늘 실습코드
1) InputTest
package day05;
import java.util.Scanner;
public class InputTest {
public static void main(String[] args) {
// import java.util.Scanner; 자동 완성 기능 : Scanner 입력 후 ctrl + space
Scanner sc = new Scanner(System.in);
String name = ""; // "" -> 미지정값, 초기화 : 문자열에는 "공백" 혹은 "", 숫자는 0
System.out.print("이름 : ");
name = sc.next();
System.out.println(name + " 님 환영합니다.");
}
}
2) InputTest2
package day05;
import java.util.Scanner;
public class InputTest2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("이름 : ");
//입력한 값들 모두 그대로 가지고 온다(구분점X)
System.out.println(sc.nextLine());
//공백 혹은 줄바꿈문자(엔터)를 기준으로 값을 분리
// System.out.println(sc.next());
// System.out.println(sc.next());
}
}
3) InputTask
package day05;
import java.util.Scanner;
public class InputTask {
public static void main(String[] args) {
//정수 2개를 입력받고 덧셈 결과 출력하기
//next()를 사용해서 한꺼번에 입력받는다.
//입력 예)4 7
//출력 예)4+7=11
Scanner sc = new Scanner(System.in);
int num1 = 0, num2 = 0, result = 0;
System.out.println("정수 2개를 공백을 구분하여 입력하세요.");
num1 = Integer.parseInt(sc.next());
num2 = Integer.parseInt(sc.next());
result = num1 + num2;
System.out.printf("%d+%d=%d\n", num1, num2, result);
}
}
4) InputTest3
package day05;
import java.util.Scanner;
public class InputTest3 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int age = 0;
String name = "";
System.out.print("나이 : ");
age = sc.nextInt(); // int형을 입력 받음
System.out.print("이름 : ");
name = sc.next();
// sc.nextLine(); // 위에서 입력한 엔터를 상쇄시키기 위함.
// name = sc.nextLine();
System.out.println(name + " 님 나이는 "+ age +"살입니다.");
}
}
** sc.next()는 엔터를 기준으로 값을 분리하기 때문에 한 번만 작성해주면 되나 nextLine()은 입력한 값들 모두 구분점 없이 그대로 가지고 오기 때문에 공백을 상쇄할 nextLine()을 두 번 작성해야 함, sc.next()를 사용하면 편리하나 엔터까지 값을 저장하고 싶다면 nextLine()를 사용해야함 **
5) DialogTest
package day05;
import javax.swing.JOptionPane;
public class DialogTest {
public static void main(String[] args) {
String name = "";
JOptionPane.showMessageDialog(null, "안녕하세요");
name = JOptionPane.showInputDialog("이름을 입력하세요");
JOptionPane.showMessageDialog(null, name + "님 어서오세요.");
}
}
** 결과값 **
6) DialogTask
package day05;
import javax.swing.JOptionPane;
public class DialogTask {
public static void main(String[] args) {
//출력
//JOptionpane.showMessageDialog(null, "");
//입력
//JOptionpane.showInputDialog("");
//대화상자를 사용해서 정수 2개를 입력받고
//곱한 결과를 대화상자로 출력하기
//입력 예) 첫번째 정수 입력 : 3
// 두번째 정수 입력 : 7
//출력 예) 3 * 7 = 21
int num1 = 0, num2 = 0, result = 0;
String n1Msg = "첫번째 정수 입력";
String n2Msg = "두번째 정수 입력";
String msg = "";
num1 = Integer.parseInt(
JOptionPane.showInputDialog(n1Msg));
num2 = Integer.parseInt(
JOptionPane.showInputDialog(n2Msg));
result = num1 * num2;
msg = num1 + "*" + num2 + "=" + result;
JOptionPane.showMessageDialog(null, msg);
}
}
** 결과값 **
4. 단축키
* 자동으로 import 생성 및 필요 없는 클래스 파일 삭제 : ctrl + shift + o
* 자동 완성 기능 : ctrl + space
'웹_프론트_백엔드 > 단과' 카테고리의 다른 글
[단과_JAVA] 2020.01.20 (0) | 2020.01.20 |
---|---|
[단과_Python] 2020.01.17 (0) | 2020.01.19 |
[단과_Python] 2020.01.16 (0) | 2020.01.17 |
[단과_JAVA] 2020.01.16 (0) | 2020.01.17 |
[단과_Python] 2020.01.15 (0) | 2020.01.16 |