JAVA编写的带括号科学计算器实现

版权申诉
0 下载量 23 浏览量 更新于2024-11-12 收藏 13KB RAR 举报
资源摘要信息:"Jisuanqi.rar_括号 科学计算器_科学计算器_计算器_计算器 java" 知识点一:科学计算器的定义和应用 科学计算器是一种具备更多数学运算功能的计算器,除了基本的加减乘除运算,还可以进行三角函数、对数、指数、阶乘、括号运算等更复杂的数学运算。在科学研究、工程设计、统计分析等多个领域都有广泛的应用。 知识点二:带括号的计算公式解析 在数学运算中,括号用于改变运算的顺序。根据数学中的“先乘除后加减”以及“先括号后乘除”的规则,括号内的运算应优先进行。在实现带括号的计算公式时,需要处理括号内的运算顺序问题,以及括号之间的嵌套关系。 知识点三:JAVA语言的特性 JAVA是一种广泛使用的面向对象的编程语言,它具有跨平台、面向对象、安全性高等特点。JAVA语言通过JVM(Java虚拟机)可以在不同的操作系统上运行,具有良好的移植性。此外,JAVA语言拥有丰富的API和强大的社区支持,为开发各种类型的应用提供了便利。 知识点四:命令行模式的特点 命令行模式是指通过输入命令来进行操作的界面模式,与图形用户界面(GUI)相对。命令行模式通常用于服务器、操作系统等后台运行环境,具有操作直观、占用资源少、执行速度快等优点。在命令行模式下,用户需要熟悉各种命令及其参数来控制程序。 知识点五:Jisuanqi.rar文件内容的解析 根据文件名称列表,我们可以推测Jisuanqi.rar文件是一个关于科学计算器的压缩包。在该压缩包中,可能包含了开发科学计算器所需的所有文件,例如JAVA源代码文件(.java)、编译后的字节码文件(.class)、资源文件等。该科学计算器的特点是能够处理带有括号的数学表达式,并且通过命令行的方式运行,这表明它可能更适合于需要在服务器上运行或进行脚本编程的用户。 知识点六:开发科学计算器时需要考虑的技术要点 开发科学计算器需要对JAVA编程语言有较深入的理解,包括但不限于掌握基本的语法结构、异常处理机制、类与对象的使用、集合框架的应用、输入输出流的操作等。此外,需要具备解析数学表达式的能力,这可能涉及到编写表达式解析器来处理包括括号在内的运算顺序问题。命令行界面的实现则需要熟悉JAVA中的System类相关方法,如System.out.print()用于输出,System.in.read()用于接收用户输入等。 总结以上知识点,可以了解到一个科学计算器项目在JAVA语言中实现时需要综合应用多种编程技巧和技术点,包括对JAVA语言的理解、表达式解析、命令行界面设计等。通过命令行模式运行的科学计算器具有轻量级、跨平台的特点,适合需要在不同环境中快速执行数学运算的场景。

import java.awt.; import javax.swing.; import java.awt.event.*; public class jisuanqi{ public static void main (String args[]){ WindowView view=new WindowView(); view.setBounds(100,100,390,360); view.setTitle("简单计算器"); }} import java.awt.event.*; public class Listen2 implements ActionListener { WindowView view; //?????????????????????? public void setView(WindowView view) { //?????????????? this.view = view; } public void actionPerformed(ActionEvent e) { int i=0; // for(i=0;i<s.length;i++){ for(i=0;i<12;i++){ //?????????????????????? if(e.getSource()==view.button[i]){ //?????????????????????? view.textshow.append("+");} else{ System.out.println("错误"); } } } } import java.awt.; import javax.swing.; import java.awt.event.*; public class WindowView extends JFrame{ JTextArea textshow,a1; // JButton b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12; JButton button[]=new JButton[14];; JPanel panel; Listen2 listen; // ??????????????? public WindowView(){ textshow = new JTextArea() ; panel =new JPanel(new GridLayout(4,4)); char []a={'0','1','2','3','4','5','6','7','8','9','+','-','='}; setLayout(new GridLayout(2,1)); add(textshow); add(panel); listen=new Listen2(); listen.setView(this); String []s=new String[a.length]; for(int i=0;i<a.length;i++){ s[i]=String.valueOf(a[i]); } int i=0; for(i=0;i<s.length;i++){ button[i]=new JButton(""+s[i]); panel.add(button[i]); button[i].addActionListener(listen); } setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); } } 补全代码,实现一个简单计算器

2023-07-14 上传

E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.a2, PID: 18827 android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.a2/com.example.a2.jisuanqi}; have you declared this activity in your AndroidManifest.xml? at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:2049) at android.app.Instrumentation.execStartActivity(Instrumentation.java:1709) at android.app.Activity.startActivityForResult(Activity.java:5192) at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:597) at android.app.Activity.startActivityForResult(Activity.java:5150) at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:583) at android.app.Activity.startActivity(Activity.java:5521) at android.app.Activity.startActivity(Activity.java:5489) at com.example.a2.MainActivity$1.onClick(MainActivity.java:37) at android.view.View.performClick(View.java:7125) at android.view.View.performClickInternal(View.java:7102) at android.view.View.access$3500(View.java:801) at android.view.View$PerformClick.run(View.java:27336) at android.os.Handler.handleCallback(Handler.java:883) at android.os.Handler.dispatchMessage(Handler.java:100) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:7356) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)

2023-06-07 上传