값 입력하기
어떤 변수는 프로그래머가 미리 지정하는 경우가 있지만, 어떤 경우엔 사용자가 직접 입력해야 하는 경우도 있습니다.(경로/파일명/원하는 값 등)
이런경우 JAVA에서는 Scanner와 JOptionPane을 사용해서 변수 값 입력이 가능합니다.
Scanner와 JOptionPane의 차이
Scanner sc = new Scanner(System.in);은 콘솔에 입력하는것이라면 JOptionPane은 팝업창을 띄워 해당 팝업창에 값을 입력하는 것이다, 추가로 JOptionPane은 선택창 / 확인창 과 같은 기능을 추가로 사용 가능하다.
Scanner의 예시
import java.util.Scanner; // import the Scanner class
class Main {
public static void main(String[] args) {
Scanner myObj = new Scanner(System.in);
String userName;
// Enter username and press Enter
System.out.println("Enter username");
userName = myObj.nextLine();
System.out.println("Username is: " + userName);
}
}
//출력
Enter username
test
Username is: test
JOptionPane의 예시(입력창)
import javax.swing.*;
public class OptionPaneExample {
JFrame f;
OptionPaneExample(){
f=new JFrame();
String name=JOptionPane.showInputDialog(f,"Enter Name");
}
public static void main(String[] args) {
new OptionPaneExample();
}
}
JOptionPane의 예시(확인창)
import javax.swing.*;
public class OptionPaneExample {
JFrame f;
OptionPaneExample(){
f=new JFrame();
JOptionPane.showMessageDialog(f,"Hello, Welcome to Javatpoint.");
}
public static void main(String[] args) {
new OptionPaneExample();
}
}
JOptionPane의 예시(선택창)
import javax.swing.*;
import java.awt.event.*;
public class OptionPaneExample extends WindowAdapter{
JFrame f;
OptionPaneExample(){
f=new JFrame();
f.addWindowListener(this);
f.setSize(300, 300);
f.setLayout(null);
f.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
f.setVisible(true);
}
public void windowClosing(WindowEvent e) {
int a=JOptionPane.showConfirmDialog(f,"Are you sure?");
if(a==JOptionPane.YES_OPTION){
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
public static void main(String[] args) {
new OptionPaneExample();
}
}
끝.
728x90
반응형
'프로그래밍 > Java' 카테고리의 다른 글
[JAVA / JAVA 기초 / 자바] printf() 란? (실습 링크 포함) (1) | 2023.12.12 |
---|---|
[JAVA / 자바]JDBC(JAVA API) 연결 에러/문제 해결하기 (0) | 2023.12.12 |
[JAVA / JAVA 기초 / 자바] For-Each란? (0) | 2023.12.12 |
[Java] 9. 파일 유형별로 나눠서 용량 계산하기 (1) | 2023.11.20 |
[Springboot(스프링부터)]Entity생성과 JPA설정 (0) | 2022.07.26 |