📄 新建 文本文档.txt
字号:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JavaCalculator //3ìDòè??ú
{
public static void main(String args[])
{
new Events();
}
}
class DefineItems //?¨ò??÷??3£á?±?á?
{
Frame frmain =new Frame();
Frame frmini =new Frame(); //?ùóD?ü???D3???mi?òminiμ??ù?a?????????÷×é?t
Frame frabout=new Frame(); //?ùóD?ü???D3???ab?òaboutμ??ù?aabout′°?ú×é?t
Frame frhelp =new Frame(); //°??ú??°?
MenuBar mebamain=new MenuBar();
MenuBar mebamini=new MenuBar();
Menu memaed=new Menu("±à?-");
Menu memavi=new Menu("2é?′");
Menu memahe=new Menu("°??ú");
Menu memied=new Menu("±à?-");
Menu memivi=new Menu("2é?′");
Menu memihe=new Menu("°??ú");
MenuItem meitmaco=new MenuItem("?′??");
MenuItem meitmapa=new MenuItem("?3ìù");
MenuItem meitmama=new MenuItem("???§Dí");
MenuItem meitmami=new MenuItem("????Dí");
MenuItem meitmahe=new MenuItem("°??ú?÷ìa");
MenuItem meitmaab=new MenuItem("1?óú...");
MenuItem meitmico=new MenuItem("?′??");
MenuItem meitmipa=new MenuItem("?3ìù");
MenuItem meitmima=new MenuItem("???§Dí");
MenuItem meitmimi=new MenuItem("????Dí");
MenuItem meitmihe=new MenuItem("°??ú?÷ìa");
MenuItem meitmiab=new MenuItem("1?óú...");
JTextField tefimain=new JTextField("0");
JTextField tefimini=new JTextField("0");
Panel pamaea=new Panel();
Panel pamawe=new Panel();
Panel pamaeaup=new Panel();
Panel pamaeaupfr=new Panel();
Panel pamaeaupbe=new Panel();
Panel pamaeace=new Panel();
Panel pamaeado=new Panel();
Panel pamaweup=new Panel();
Panel pamawece=new Panel();
Panel pamawedo=new Panel();
Panel pami =new Panel();
CheckboxGroup jinzhi =new CheckboxGroup();
CheckboxGroup du =new CheckboxGroup();
CheckboxGroup charlong=new CheckboxGroup();
Checkbox binsys=new Checkbox("?t????",jinzhi,false);
Checkbox octsys=new Checkbox("°?????",jinzhi,false);
Checkbox decsys=new Checkbox("ê?????",jinzhi,true);
Checkbox hexsys=new Checkbox("ê?áù????",jinzhi,false);
Checkbox ang=new Checkbox("???è",du,true);
Checkbox rad=new Checkbox("???è",du,false);
Checkbox gra=new Checkbox("ìY?è",du,false);
Checkbox fou=new Checkbox("??×?",charlong,true);
Checkbox two=new Checkbox("??×?",charlong,false);
Checkbox one=new Checkbox("μ¥×?",charlong,false);
Checkbox bit=new Checkbox("×??ú",charlong,false);
Checkbox inv=new Checkbox("Inv",null,false);
Checkbox hyp=new Checkbox("Hyp",null,false);
Label ver=new Label("Java ???§?????÷ [°?±?1.0]");
Label writer=new Label("Made by GreatBZhang");
Label texthelp[]=new Label[15]; //éè??êy×é£?2¢·?êμày?ˉ
Button manubu[] =new Button[10];
Button minubu[] =new Button[10];
Button majia =new Button("+");
Button majian =new Button("-");
Button macheng =new Button("*");
Button machu =new Button("/");
Button mapoint =new Button(".");
Button madeng =new Button("=");
Button CE =new Button("CE");
Button C =new Button("C");
Button back =new Button("Backspace");
Button mod =new Button("Mod");
Button and =new Button("And");
Button or =new Button("Or");
Button xor =new Button("Xor");
Button lsh =new Button("Lsh");
Button not =new Button("Not");
Button inT =new Button("int");
Button zhuanhuan=new Button("+|-");
Button mc =new Button("MC");
Button mr =new Button("MR");
Button ms =new Button("MS");
Button mjia =new Button("M+");
Button pi =new Button("pi");
Button you =new Button(")");
Button zuo =new Button("(");
Button ln =new Button("ln");
Button log =new Button("log");
Button n =new Button("n!");
Button marec =new Button("rec");
Button exp =new Button("Exp");
Button xy =new Button("x^y");
Button x3 =new Button("x^3");
Button x2 =new Button("x^2");
Button fe =new Button("F-E");
Button dms =new Button("dms");
Button sin =new Button("sin");
Button cos =new Button("cos");
Button tan =new Button("tan");
Button sta =new Button("Sta");
Button ave =new Button("Ave");
Button sum =new Button("Sum");
Button s =new Button("s");
Button dat =new Button("Dat");
Button a =new Button("A");
Button b =new Button("B");
Button c =new Button("C");
Button d =new Button("D");
Button e =new Button("E");
Button f =new Button("F");
Button mijia =new Button("+");
Button mijian =new Button("-");
Button micheng =new Button("*");
Button michu =new Button("/");
Button mipoint =new Button(".");
Button mideng =new Button("=");
Button micls =new Button("C");
Button misqrt =new Button("?a·?");
Button misquare =new Button("??·?");
Button mirec =new Button("μ1êy");
Button abOK =new Button("è·?¨");
CardLayout card =new CardLayout();
//ó?óú????μ?á?
String firnum=new String("");//±?D??èéè?a???μ£?è?1?D′3éString firnum£?ò???DD3ìDò?±?ó°′μèóú?á3?′í
String symbol=new String("");
String tempnum=new String("");//ó?óú?′???3ìùμ?×?·?′?á?
StringBuffer inputstr=new StringBuffer("");
double finalanswer;
double tempanswer;
boolean symflag=false;
boolean answerflag=false;
boolean angflag=true;//ò???èy??ó?óú?D??????μ?ê????è???è?1ê?ìY?è
boolean radflag=false;
boolean graflag=false;
double PI=3.141592653589793;
public DefineItems()
{
for(int x=0;x<=9;x++) //êμàyêy×??ü,2¢éè??label
{
manubu[x]=new Button(String.valueOf(x));
minubu[x]=new Button(String.valueOf(x));
}
for(int y=0;y<=14;y++)//êμày15DD°??ú
{
texthelp[y]=new Label();
}
}
}
class Calculate extends DefineItems //????1y3ì
{
void check(StringBuffer tempstr)
{
if(tempstr.toString().length()==1)
{
if(tempstr.toString().charAt(0)=='.')
{
tempstr.deleteCharAt(0);
}
}
if(tempstr.toString().length()==2)
{
if(tempstr.toString().charAt(0)=='0' && tempstr.toString().charAt(1)!='.')
{
tempstr.deleteCharAt(0);
}
}
int sum=0;
int len=tempstr.length();
for(int i=0;i<len;i++)
{
if(tempstr.charAt(i)=='.')
{
sum++;
}
}
if(sum>1)
{
tempstr.deleteCharAt(len-1);
}
}
void appendinput(String str)
{
inputstr.append(str);
}
void savefirnum()
{
firnum=inputstr.toString();
inputstr.delete(0,inputstr.length());
}
void addsymbol(String str)
{
symbol=str;
symflag=true;
}
void displaynum(String str)
{
tefimini.setText(str);
tefimain.setText(str);
}
double calculate(String first,String second,String symbol)
{
if(symbol.equals("+"))
tempanswer=Double.parseDouble(first)+Double.parseDouble(second);
if(symbol.equals("-"))
tempanswer=Double.parseDouble(first)-Double.parseDouble(second);
if(symbol.equals("*"))
tempanswer=Double.parseDouble(first)*Double.parseDouble(second);
if(symbol.equals("/"))
tempanswer=Double.parseDouble(first)/Double.parseDouble(second);
return tempanswer;
}
double square(String str)
{
double x=Double.parseDouble(str);
tempanswer=x*x;
return tempanswer;
}
double sqrt(String str)
{
double x=Double.parseDouble(str);
tempanswer=Math.pow(x,0.5);
return tempanswer;
}
double rec(String str)
{
double x=Double.parseDouble(str);
tempanswer=1/x;
return tempanswer;
}
double sin(String str)
{
if(angflag)//?D??ê?è?μ?ê?·????è
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -