이 기사는 간단한 계산기를 구현하는 Java의 기능을 공유합니다. 특정 내용은 다음과 같습니다
주제:
계산기를 시뮬레이션하는 프로그램을 작성하십시오. 패널에 텍스트 상자 추가 (키 및 계산 결과 표시),
10 개의 숫자 버튼 (0 ~ 9), 4 개의 작동 버튼 (추가, 빼기, 곱하기, 나누기), 동일 부호 버튼 및 클리어 버튼.
텍스트 상자에 키와 결과가 표시되어야합니다.
코드 프로세스 표시 :
import java.awt.container; import java.awt.flowlayout; import java.awt.gridlayout; import java.awt.event. actionevent; import java.awt.event.actionlistener; import javax.swing.jbutton; import javax.swing.jframe; javax.jpan javax.swing.jtextfield; public class 연습 1 jframe 구현 actionlistener {private jpanel p1 = new jpanel (); // 패널 생성 개인 JPANEL P2 = NEW JPANEL (); // 패널 생성 개인 JTEXTFIELD T1; // 텍스트 상자 1은 입력 정보를 표시하는 데 사용됩니다. StringBuffer str; // 입력 문자열 jbutton [] b = new JButton [10]; JBUTTON B1, B2, B3, B4, B5, B6; // 16 버튼 더블 X, Y; int n; 공개 연습 1 () {슈퍼 ( "가짜 선장의 큰 목표"); setsize (350,300); // 창 크기 설정 setLocationRelativeto (null); // 중간 컨테이너에 표시 c = getContentPane (); // 컨텐츠 패널 생성 객체 T1 = New Jtextfield (25); T1. 세인 가능한 (거짓); // 전용 표시, p2.add (t1); // 패널에 텍스트 상자 추가 p2.setLayout (new GridLayout (3,2)); // 얼굴을 4 행으로, 1 열 str = new StringBuffer (); // (int i = 0; i <10; i ++)에 대한 각 버튼 인스턴스 // 배열에서 버튼 0 ~ 9에 대한 레이블을 설정하고 리스너 {string s = ""+i; b [i] = 새로운 Jbutton (들); b [i] .addactionListener (this); } b1 = new Jbutton ( "+"); B2 = New Jbutton ( "-"); B3 = 새로운 JBUTTON ( "*"); B4 = 새로운 JBUTTON ( "/"); B5 = 새로운 JBUTTON ( "="); B6 = New Jbutton ( "삭제"); // 패널 p1.add (b [7])에 추가; p1.add (b [8]); p1.add (b [9]); p1.add (b1); p1.add (b [4]); p1.add (b [5]); p1.add (b [6]); p1.add (b2); p1.add (b [1]); p1.add (b [2]); p1.add (b [3]); p1.add (b3); p1.add (b [0]); p1.add (b5); p1.add (b6); p1.add (b4); P1.SetLayout (New GridLayout (4,5,10,10)); // 리스너 B1.AddActionListener (this)를 등록합니다. b2.addactionListener (this); b3. addactionListener (this); b4.addactionListener (this); b5.addactionListener (this); b6.addactionListener (this); // 컨텐츠를 패널에 추가하고 컨테이너 C.ADD (P2)에 추가합니다. C.add (P1); c.setLayout (new flowLayout ()); // 순차적 인 레이아웃으로 설정 // 세트 창 세트 닫기 액션 setDefaultCloseOperation (jframe.exit_on_close); // 세트 창 클로스 액션 setVisible (true); // 가시적 setResizable (false)으로 설정; // 프레임 크기는 금지되어 있습니다} public static void main (string [] args) {// todo 자동 생성 메소드 스터브 @suppresswarnings ( "Unused") 연습 1 계산 = 새 연습 1 (); } @Override public void actionPerformed (actionEvent e) {// todo 자동 생성 메소드 스텁 if (e.getSource () == b6) {t1.settext ( "0"); // t1.sethorizontalalignment (jtextfield.right); // 오른쪽 정렬 str.setLength (0); } //double.parsEdouble은 문자열을 이중 유형 //t1.getText (). trim ()을 저장하고 다른 경우 (e.getSource () == B1)를 클릭하여 x의 값을 가져 와서 y {x = double.parsEdouble (t1.getText ()); str.setlength (0); y = 0D; n = 0; } else if (e.getSource () == b2) // 뺄셈 작동 {x = double.parsedouble (t1.getText (). trim ()); str.setlength (0); y = 0D; n = 1; } else if (e.getSource () == B3) // 다중 작업 {x = double.parsEdouble (t1.getText (). trim ()); str.setlength (0); y = 0D; n = 2; } else if (e.getSource () == B4) // 작동 {x = double.parsedouble (t1.getText (). trim ()); str.setlength (0); y = 0D; n = 3; } else if (e.getSource () == B5) // 동일 부호 {str.setLength (0); 스위치 (n) {case 0 : t1.settext ( ""+(x+y)); break; 사례 1 : t1.settext ( ""+(xy)); break; 사례 2 : t1.settext ( ""+(x*y)); break; 사례 3 : t1.settext ( ""+(x/y)); break; }} else {if (e.getSource () == b [0]) {if (t1.getText (). trim (). Equals ( "0")) // 디스플레이가 0 인 경우 {} else t1.settext (e.getActionCommand ()). toString ()); T1. SETHORIZONTALALIGNMENT (jtextfield.right); y = double.parsedouble (t1.getText (). trim ()); } else {t1.settext (str.append (e.getActionCommand ()). toString ()); T1. SETHORIZONTALALIGNMENT (jtextfield.right); y = double.parsedouble (t1.getText (). trim ()); }}}}요약 : 코드는 약간 길지만 실제 이해 후에는 복잡하지 않습니다. 물론 이것은 단순한 시뮬레이션 계산기 일뿐입니다.
다른 기능도 추가 할 수 있습니다. 예를 들어, 지수 작업, 지수 작업, 제곱 작업을 추가하거나 인터페이스를 아름답게 만들기 위해
위에 입력 한 숫자가 표시되고 결과가 아래에 표시된 결과 텍스트 상자를 추가하십시오. 물론 그렇게 말하면 여전히 독자가 스스로 공부하는 데 달려 있습니다.
위의 모든 내용은이 기사의 전체 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.