삼항연산자 절대값 리턴하는 메서드 num이 음수이면 -num 출력 => -(-num))으로 절대값이 출력 class AbsNum { public int abs(int num) { return num < 0 ? -num : num; } } public static void main(String[] args) { AbsNum absNum = new AbsNum(); int num = absNum.abs(-5); } java.lang.Math 클래스 - 수학적인 다양한 기능을 상수와 static 메서드로 제공 - 모든 멤버가 static 으로 선언되어 있므로 클래스명만으로 접근 가능 ex) Math.PI, Math.random() public class Ax2 { public static void main(S..
JTable 데이터를 테이블(표) 형식으로 표현하는 컴포넌트 - 행, 열 구조로 데이터가 구성되며 2차원 배열을 사용해 데이터를 추가하거나, Vector 객체를 사용하여 추가가 가능하다. => 직접 추가하는 것보단 Model 객체 (DefaultTableModel)를 사용하여 추가 - 기본적으로 스크롤 기능이 없으므로 데이터가 많아지면 관리가 어렵다. => JScrollPane 객체를 활용하여 스크롤 기능을 추가해서 사용 (JTable > JScrollPane > JFrame 순으로 부착) 1. JScrollPane 객체 생성 후 JFrame에 부착하고, 2. JTable 객체 생성 후 JScrollPane의 ViewportView 영역에 부착한다 JScrollPane scrollPane = new JS..
체크박스 JCheckBox 패널 생성 후 프레임에 부착 체크박스 생성 후 패널에 부착 public void showFrame() { JFrame f = new JFrame(); f.setBounds(400, 300, 400, 200); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel p = new JPanel(); f.add(p, BorderLayout.CENTER); JCheckBox cb1 = new JCheckBox("Java"); JCheckBox cb2 = new JCheckBox("JSP"); JCheckBox cb3 = new JCheckBox("Android"); JCheckBox cb4 = new JCheckBox("전체선택"); p...
JOptionPane - 다이얼로그(팝업창)을 생성하는 객체 - JOptionPane 클래스의 static 메서드인 show[다이얼로그 종류 이름]Dialog()메서드를 호출해서 표시한다 - 생성자 파라미터에 따라 각각 다른 옵션 설정이 가능하다 1. MessageDialog : 사용자에게 메세지(팝업창)를 표시하기 위한 다이얼로그 (alert) 2. ConfirmDialog : 사용자의 선택을 받도록 버튼을 표시하는 다이얼로그 (confirm) 3. InputDialog : 사용자로부터 데이터를 입력받기 위한 다이얼로그 (prompt) JFrame f = new JFrame("Dialog 기초"); f.setBounds(400, 300, 300, 200); f.setDefaultCloseOperatio..
JTextField 텍스트 한 줄을 입력하는 컴포넌트 - BorderLayout에 바로 부착할 경우 기본 생성자로 생성 가능하지만 주로 JPanel 등에 부착해서 사용할 때 생성자 파라미터로 컬럼길이를 전달해야한다(컬럼길이를 설정해주어야 함!) - getText() 메서드로 입력된 텍스트를 가져오고 setText() 메서드로 새 텍스트를 표시할 수 있다. - ActionListener 연결 시 텍스트 입력 후 엔터키에 대한 동작이 처리 가능하다. - KeyListener 연결 시 키보드에서 눌러지는 키에 대한 동작이 처리 가능하다. public void showFrame() { JFrame f = new JFrame(); f.setBounds(200, 300, 200, 200); f.setDefaultC..
레이아웃(layout) 화면을 구성하는 형태 (요소들의 배치 형태) 다양한 레이아웃을 사용하여 요소들의 배치 형태를 결정 가능 각 레이아웃을 지원하는 객체 사용하여 레이아웃 적용 가능 - BorderLayout, FlowLayout, GridLayout, CardLayout 등 BorderLayout - JFrame 객체의 기본 레이아웃으로 대상 컨테이너의 동, 서, 남, 북, 중앙 5개의 영역으로 분할하여 컴포넌트를 배치한다. => 별도의 설정이 없을 경우, 기본적으로 BorderLayout이 적용되어 있다. - 배치할 영역을 지정하는 경우, add() 메서드의 두번째 파라미터로 BorderLayout.XXX 상수를 사용하여 위치 지정이 가능하다. "North", "Center" 등의 문자열도 사용 가..
Event 컴포넌트(버튼 등)에서 사용자에 의해 어떤 상호작용이 일어나는 것 - 버튼 클릭, 마우스 이동, 키보드 입력, 체크박스 선택 이벤트가 발생했을 때 어떤 동작을 수행하기 위해서는 대상 컴포넌트와 이벤트를 처리하는 이벤트 리스너를 서로 연결해야한다. 각 컴포넌트에 따라 서로 다른 리스너가 제공된다(버튼 클릭 이벤트 담당 : ActionListener 사용) 컴포넌트 객체의 addXXX() 메서드를 호출해 리스너 객체를 파라미터로 전달하여 연결한다. - XXX는 담당 리스너 인터페이스(또는 클래스)이름 - btn.addActionListener(리스너객체); 이벤트 처리 Event Handling 컴포넌트에 특정 이벤트가 발생했을 때 수행할 동작을 지정하여 처리하는 것 리스너 인터페이스(또는 어댑터..
Java Swing 자바에서 GUI 구현을 위해 제공되는 API Java AWT (Active Window Toolkit)의 업그레이드 형으로 AWT API와 Swing API을 조합하여 사용한다. java.awt 패키지와 java.swing 패키지의 각종 클래스 및 인터페이스 활용 1. 컨테이너 : 여러 컴포넌트를 하나로 묶어서 부착 가능한 객체(도큐먼트와 비슷하다고 보면 됨) - 프레임과 패널 주로 사용 - JFrame 클래스와 JPanel 클래스로 구현 2. 컴포넌트 : 화면을 구성하는 각각의 요소(버튼, 체크박스, 라디오 버튼 등) - 컨테이너에 부착하여 사용 - 각 컴포넌트에서 사용자로부터 어떤 동작이 발생하면 해당 동작을 처리하는 이벤트 처리 필요 창 생성하는 기본 문법 창(윈도우)을 생성하기..