知识大全 java 计算器编码

Posted

篇首语:古人已用三冬足,年少今开万卷余。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 java 计算器编码相关的知识,希望对你有一定的参考价值。

  import java awt *;

  import java awt event *;

  import java lang *;

  import javax swing *;

  public class cc extends Frame

  //声明三个面板的布局

  GridLayout gl gl gl ;

  Panel p p p p ;

  JTextField tf ;

  TextField tf ;

  Button b b b b b b b b b b b b

  b b b b b b b

  b b b b b b b b ;

  StringBuffer str;

  //显示屏所显示的字符串

  double x y;

  //x和y都是运算数

  int z;

  //Z表示单击了那一个运算符 表示 + 表示 表示 * 表示 /

  static double m;

  //记忆的数字

  public cc()

  gl =new GridLayout( );

  //实例化三个面板的布局

  gl =new GridLayout( );

  gl =new GridLayout( );

  tf =new JTextField( );

  //显示屏

  tf setHorizontalAlignment(JTextField RIGHT);

  tf setEnabled(false);

  tf setText( );

  tf =new TextField( );

  //显示记忆的索引值

  tf setEditable(false);

  //实例化所有按钮 设置其前景色并注册监听器

  b =new Button( Backspace );

  b setForeground(Color red);

  b addActionListener(new Bt());

  b =new Button( CE );

  b setForeground(Color red);

  b addActionListener(new Bt());

  b =new Button( C );

  b setForeground(Color red);

  b addActionListener(new Bt());

  b =new Button( MC );

  b setForeground(Color red);

  b addActionListener(new Bt());

  b =new Button( MR );

  b setForeground(Color red);

  b addActionListener(new Bt());

  b =new Button( MS );

  b setForeground(Color red);

  b addActionListener(new Bt());

  b =new Button( M+ );

  b setForeground(Color red);

  b addActionListener(new Bt());

  b =new Button( );

  b setForeground(Color blue);

  b addActionListener(new Bt());

  b =new Button( );

  b setForeground(Color blue);

  b addActionListener(new Bt());

  b =new Button( );

  b setForeground(Color blue);

  b addActionListener(new Bt());

  b =new Button( / );

  b setForeground(Color red);

  b addActionListener(new Bt());

  b =new Button( sqrt );

  b setForeground(Color blue); b addActionListener(new Bt());

  b =new Button( ); b setForeground(Color blue); b addActionListener(new Bt());

  b =new Button( ); b setForeground(Color blue); b addActionListener(new Bt());

  b =new Button( ); b setForeground(Color blue); b addActionListener(new Bt());

  b =new Button( * ); b setForeground(Color red); b addActionListener(new Bt());

  b =new Button( % ); b setForeground(Color blue); b addActionListener(new Bt());

  b =new Button( ); b setForeground(Color blue); b addActionListener(new Bt());

  b =new Button( ); b setForeground(Color blue); b addActionListener(new Bt());

  b =new Button( ); b setForeground(Color blue); b addActionListener(new Bt());

  b =new Button( ); b setForeground(Color red); b addActionListener(new Bt());

  b =new Button( /X ); b setForeground(Color blue); b addActionListener(new Bt());

  b =new Button( ); b setForeground(Color blue); b addActionListener(new Bt());

  b =new Button( +/ ); b setForeground(Color blue); b addActionListener(new Bt());

  b =new Button( ); b setForeground(Color blue); b addActionListener(new Bt());

  b =new Button( + ); b setForeground(Color red); b addActionListener(new Bt());

  b =new Button( = ); b setForeground(Color red); b addActionListener(new Bt());

  //实例化四个面板

  p =new Panel();

  p =new Panel();

  p =new Panel();

  p =new Panel();

  //创建一个空字符串缓冲区

  str=new StringBuffer();

  //添加面板p 中的组件和设置其在框架中的位置和大小

  p add(tf );

  p setBounds( );

  //添加面板p 中的组件和设置其在框架中的位置和大小

  p setLayout(gl );

  p add(tf );

  p add(b ); p add(b ); p add(b );

  p setBounds( );

  //添加面板p 中的组件并设置其的框架中的位置和大小

  p setLayout(gl ); p add(b ); p add(b );

  p add(b ); p add(b ); p setBounds( );

  //添加面板p 中的组件并设置其在框架中的位置和大小

  p setLayout(gl );//设置p 的布局

  p add(b ); p add(b ); p add(b ); p add(b );

  p add(b ); p add(b ); p add(b ); p add(b );

  p add(b ); p add(b ); p add(b ); p add(b );

  p add(b ); p add(b ); p add(b ); p add(b );

  p add(b ); p add(b ); p add(b ); p add(b );

  p setBounds( );

  //设置框架中的布局为空布局并添加 个面板

  setLayout(null); add(p ); add(p ); add(p );

  add(p ); setResizable(false);

  //禁止调整框架的大小 //匿名类关闭窗口

  addWindowListener(new WindowAdapter()

  public void windowClosing(WindowEvent e )

  System exit( );

  

  );

  setBackground(Color lightGray);

  setBounds( );

  setVisible(true);

  //构造监听器

  class Bt implements ActionListener

  public void actionPerformed(ActionEvent e )

  try

  if(e getSource()==b )

  //选择 CE 清零

   tf setText( );

  //把显示屏清零

  str setLength( );

  //清空字符串缓冲区以准备接收新的输入运算数

   else if(e getSource()==b )

  //选择 C 清零

   tf setText( );

  //把显示屏清零

  str setLength( );

   else if(e getSource()==b )

  //单击 +/ 选择输入的运算数是正数还是负数

   x=Double parseDouble(tf getText() trim());

  tf setText( +( x)); else if(e getSource()==b )

  //单击加号按钮获得x的值和z的值并清空y的值

  

  x=Double parseDouble(tf getText() trim());

  str setLength( );

  //清空缓冲区以便接收新的另一个运算数

  y= d; z= ; else if(e getSource()==b )

  //单击减号按钮获得x的值和z的值并清空y的值

   x=Double parseDouble(tf getText() trim());

  str setLength( ); y= d; z= ; else if(e getSource()==b )

  //单击乘号按钮获得x的值和z的值并清空y的值

   x=Double parseDouble(tf getText() trim()); str setLength( ); y= d; z= ;

  else if(e getSource()==b )//单击除号按钮获得x的值和z的值并空y的值

   x=Double parseDouble(tf getText() trim()); str setLength( ); y= d; z= ;

  else if(e getSource()==b )//单击等号按钮输出计算结果

   str setLength( ); switch(z) case : tf setText( +(x+y));

  break; case : tf setText( +(x y));break; case : tf setText( +(x*y));break;

  case : tf setText( +(x/y));break; else if(e getSource()==b )

  //单击 按钮输入小数

   if(tf getText() trim() indexOf( )!= )

  //判断字符串中是否已经包含了小数点

   else//如果没数点有小

   if(tf getText() trim() equals( ))

  //如果初时显示为

   str setLength( );

  tf setText((str append( +e getActionCommand())) toString());

  else if(tf getText() trim() equals( ))

  //如果初时显示为空则不做任何操作

   else tf setText(str append(e getActionCommand()) toString());

   y= d; else if(e getSource()==b )

  //求平方根

   x=Double parseDouble(tf getText() trim());

  tf setText( 数字格式异常 );

  if(x< ) tf setText( 负数没有平方根 );

  else tf setText( +Math sqrt(x)); str setLength( ); y= d;

  else if(e getSource()==b )//单击了 % 按钮

   x=Double parseDouble(tf getText() trim());

  tf setText( +( *x)); str setLength( ); y= d;

   else if(e getSource()==b )//单击了 /X 按钮

   x=Double parseDouble(tf getText() trim());

  if(x== ) tf setText( 除数不能为零 ); else

   tf setText( +( /x)); str setLength( ); y= d;

   else if(e getSource()==b )//MC为清除内存

   m= d; tf setText( ); str setLength( );

   else if(e getSource()==b )//MR为重新调用存储的数据

   if(tf getText() trim()!= )//有记忆数字

   tf setText( +m); else if(e getSource()==b )

  //MS为存储显示的数据

   m=Double parseDouble(tf getText() trim());

  tf setText( M ); tf setText( ); str setLength( );

  else if(e getSource()==b )//M+为将显示的数字与已经存储的数据相加要查看新的数字单击MR

   m=m+Double parseDouble(tf getText() trim()); else//选择的是其他的按钮

   if(e getSource()==b )//如果选择的是 这个数字键

   if(tf getText() trim() equals( ))

  //如果显示屏显示的为零不做操作

   else tf setText(str append(e getActionCommand()) toString());

  y=Double parseDouble(tf getText() trim()); else if(e getSource()==b )

  //选择的是 BackSpace 按钮

   if(!tf getText() trim() equals( ))

  //如果显示屏显示的不是零

   if(str length()!= )

  tf setText(str delete(str length() str length()) toString());

  //可能抛出字符串越界异常

   else tf setText( ); str setLength( );

  y=Double parseDouble(tf getText() trim()); else

  //其他的数字键

   tf setText(str append(e getActionCommand()) toString());

  y=Double parseDouble(tf getText() trim()); catch(NumberFormatException e) tf setText( 数字格式异常 ); catch(StringIndexOutOfBound***ception e)

cha138/Article/program/Java/hx/201311/26926

相关参考

知识大全 Java中的中文编码问题

Java中的中文编码问题  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  ()为什么要编码&nbs

知识大全 java base64编码和解码案例

  Java代码  importjavaioIOException;  publicclasstest  /**  *编码  *@parambstr  *@returnString  */  publ

知识大全 Java属性文件编码问题

Java属性文件编码问题  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Property文件中使

知识大全 Java多语言编码问题解析(1)

Java多语言编码问题解析(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Java编译器在

知识大全 java编码理解

  <%@pagecontentType=text/charset=utfpageEncoding=GBK%>  jsp页面(pageEncoding)——根据pageEncoding的设

知识大全 Java中编码以及Unicode总结

Java中编码以及Unicode总结  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!    基本概念

知识大全 Java多语言编码问题解析(2)

Java多语言编码问题解析(2)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  这里是一个具体的

知识大全 Google MAP编码折线算法的Java实现

GoogleMAP编码折线算法的Java实现  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  首先

知识大全 如何优化JAVA程序设计和编码,提高性能

如何优化JAVA程序设计和编码,提高性能  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  通过使用

知识大全 在 Java 中如何进行 BASE64 编码和解码

在Java中如何进行BASE64编码和解码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  BAS