用java制作一个程序员计算器和win7系统自带的一样的代码,谢谢
展开全部 import javax.swing.*; import java.awt.*; import java.awt.event.*; public class Calculator3 extends JFrame implements ActionListener { private boolean dotExist, operated, equaled; // 帮助运算的布尔变量 private double storedNumber; // 目前的结果 private char lastOperator; // 表示上一运算符 private JTextField operation; // 结果栏 private JButton dot, plus, minus, multi, div, sqrt, equal, changePN, clear; // 运算符 private JButton[] numbers; // 数字 // 构造者 public Calculator3() { setTitle("Calculator"); // 初始化变量 dotExist = false; // 表示当前的数是否有小数点 operated = false; // 表示任意运算符是否被按下 equaled = false; // 表示等号是否被按下 storedNumber = 0; lastOperator = '?'; // 初始化窗口变量 operation = new JTextField("0"); operation.setEditable(false); numbers = new JButton[10]; for (int i = 0; i < 10; i++) numbers[i] = new JButton("" + i); dot = new JButton("."); plus = new JButton("+"); minus = new JButton("-"); multi = new JButton("*"); div = new JButton("/"); sqrt = new JButton("√"); equal = new JButton("="); changePN = new JButton("±"); clear = new JButton("AC"); // 将窗口物体放入窗口 GridBagLayout layout = new GridBagLayout(); getContentPane().setLayout(layout); addComponent(layout, operation, 0, 0, 4, 1); addComponent(layout, numbers[1], 1, 0, 1, 1); addComponent(layout, numbers[2], 1, 1, 1, 1); addComponent(layout, numbers[3], 1, 2, 1, 1); addComponent(layout, numbers[4], 2, 0, 1, 1); addComponent(layout, numbers[5], 2, 1, 1, 1); addComponent(layout, numbers[6], 2, 2, 1, 1); addComponent(layout, numbers[7], 3, 0, 1, 1); addComponent(layout, numbers[8], 3, 1, 1, 1); addComponent(layout, numbers[9], 3, 2, 1, 1); addComponent(layout, dot, 4, 0, 1, 1); addComponent(layout, numbers[0], 4, 1, 1, 1); addComponent(layout, sqrt, 4, 2, 1, 1); addComponent(layout, plus, 1, 3, 1, 1); addComponent(layout, minus, 2, 3, 1, 1); addComponent(layout, multi, 3, 3, 1, 1); addComponent(layout, div, 4, 3, 1, 1); addComponent(layout, equal, 5, 0, 2, 1); addComponent(layout, changePN, 5, 2, 1, 1); addComponent(layout, clear, 5, 3, 1, 1); } // 对按钮进行反应的方法 public void actionPerformed(ActionEvent e) { JButton btn = (JButton) e.getSource(); if (btn == clear) { operation.setText("0"); dotExist = false; storedNumber = 0; lastOperator = '?'; } else if (btn == equal) { operate('='); equaled = true; } else if (btn == plus) { operate('+'); equaled = false; } else if (btn == minus) { operate('-'); equaled = false; } else if (btn == multi) { operate('*'); equaled = false; } else if (btn == div) { operate('/'); equaled = false; } else if (btn == changePN) { operate('p'); operate('='); equaled = true; } else if (btn == sqrt) { operate('s'); operate('='); equaled = true; } else { if (equaled) storedNumber = 0; for (int i = 0; i < 10; i++) if (btn == numbers[i]) { if (operation.getText().equals("0")) operation.setText("" + i); else if (!operated) operation.setText(operation.getText() + i); else { operation.setText("" + i); operated = false; } } if (btn == dot && !dotExist) { operation.setText(operation.getText() + "."); dotExist = true; } } } // 进行运算的方法 private void operate(char operator) { double currentNumber = Double.valueOf(operation.getText()) .doubleValue(); if (lastOperator == '?') storedNumber = currentNumber; else if (lastOperator == '+') storedNumber += currentNumber; else if (lastOperator == '-') storedNumber -= currentNumber; else if (lastOperator == '*') storedNumber *= currentNumber; else if (lastOperator == '/') storedNumber /= currentNumber; else if (lastOperator == 'p') storedNumber *= -1; else if (lastOperator == 's') storedNumber = Math.sqrt(currentNumber); else if (lastOperator == '=' && equaled) storedNumber = currentNumber; operation.setText("" + storedNumber); operated = true; lastOperator = operator; } // 快捷使用GridBagLayout的方法 private void addComponent(GridBagLayout layout, Component component, int row, int col, int width, int height) { GridBagConstraints constraints = new GridBagConstraints(); constraints.fill = GridBagConstraints.BOTH; constraints.insets = new Insets(10, 2, 10, 2); constraints.weightx = 100; constraints.weighty = 100; constraints.gridx = col; constraints.gridy = row; constraints.gridwidth = width; constraints.gridheight = height; layout.setConstraints(component, constraints); if (component instanceof JButton) ((JButton) component).addActionListener(this); getContentPane().add(component); } // 主方法初始化并显示窗口 public static void main(String[] args) { Calculator3 calc = new Calculator3(); calc.setSize(290, 400); calc.setVisible(true); } }
广告设计主流用什么软件做呀
1 Adobe Photoshop 简体中文 软件类别: 图像处理 Adobe Illustrator CS v11 软件语言: 英文 软件类别: 图像处理 运行环境: Win9x/NT/2000/XP/ Photoshop是著名的图象处理软件 Photoshop是著名的图象处理软件, 为美国ADOBE公司出品。
在修饰和处理摄影作品和绘画作品时,具有非常强大的功能 2 Adobe Illustrator CS v11 Adobe Illustrator是一套被设计用来作输出及网页制作双方面用途、功能强大且完善的绘图软件包,这个专业的绘图程序整合了功能强大的向量绘图工具、完整的PostScript输出,并和Photoshop或其它Adobe家族的软件紧密地结合。
第10版增加了诸如Arc、矩型网格线(Rectangular Grid)以及坐标网格线(Polar Grid)工具等新的绘图及自动化优点;增加编辑的灵活度以及标志(编辑主要的对象或图像复制)。
你可以运用笔刷及其它如合并、数据驱动坐标等在工具列上的创造工具,帮助你建立联结到数据库的样版。
新的Illustrator还提供更多的网络生产功能,包括裁切图像并支持可变动向量绘图档(SVG)增强。
3 Fireworks MX 2004 简体中文版软件语言: 简体中文 软件类别: 图像处理 4 AutoCAD 设计 5 Corel DRAW 6 三维动画软件 3D Studio(3DS)。
它的全称是 3-Dimension Studio,译成中文应该是“三维影像制作室”。
3D Studio MAX(以下简称 MAX)是以 3DS 4.x为基础的升级版本,它以全新的 Windows界面及更强大的功能展示在我们面前。
用MAX来制作三维动画就像是当一个大导演——一切的角色、道具、灯光、摄像机、场景(包括如云、雾、雪、闪电等特效场面)及配音、镜头的剪辑合成等等都任你来安排处理。
如果你是一位设计家,用MAX来设计产品模型的感觉就像是雕塑家和魔术师,复杂的模型几乎是在瞬间就奇迹般地建立起来了。
而用MAX修改创建的模型更是轻而易举的事,完全可以把宝贵的时间和精力集中用在使设计更加完美更加理想上。
无论是出于何种目的使用 MAX,一定会充分体会到用计算机工作时的那种“工作就是玩,玩就是工作”的快感。
可以毫不夸张地说,哪里需要三维设计、哪里需要三维动画,哪里就需要MAX。
MAX适合于从事下列任何一种职业的专家或业余爱好者:电影特技、立体和影视动画广告设计、工业设计、建筑和室内装潢设计、包装与装潢设计、三维游戏开发、软件开发程序员(制作软件片头)、教学多媒体演示制作、军事科学研究和物理、化学或生物化学研究以及所有对三维动画和立体造型感兴趣的广大电脑玩家等。
7 MAYA因其强大的功能在3D动画界造成巨大的影响,已经渗入到电影、广播电视、公司演示、游戏可视化等各个领域,且成为三维动画软件中的佼佼者。
《星球大战前传》、《透明人》、《黑客帝国》、《角斗士》、《完美风暴》、《恐龙》等到很多大片中的电脑特技镜头都是应用MAYA完成的。
逼真的角色动画、丰富的画笔,接近完美的毛发、衣服效果,不仅是影视广告公司对MAYA情有独钟,许多喜爱三维动画制作,并有志向影视电脑特技方向发展的朋友也为MAYA的强大功能所吸引。
8 非线性编辑软件 Adobe Premiere 由ADOBE公司出品的PREMIERE,功能强大,操作方便,在非编软件中处于领先地位.由它首创的时间线编辑概念已成为行业标准.PREMIERE是一个集音频视频为一体的后期非线性编辑软件,其通用性,兼容性很强,支持众多的图形,视频,音频格式,还支持很多强大的第三方插件,并支持市面上大多数视频卡,成为非线性编辑系统中的核心软件,是影视后期制作中进行非线性编辑的有力工具.PREMIERE广泛应用在视频制作的各个领域:电视,多媒体,游戏,网络制作等许多方面,具有广泛的实用性
【软件开发平台价格】软件开发平台有哪些?现在国内的软件开发平...
常见的开发平台有方正FIX,普元EOS,顶点LIVEBOS,金富瑞等。
ES2007业务平台基于SOA架构体系,结合数据建模、业务建模、可视化流程引擎、动态表单设计等多种实现工具,是企业应用开发的一个高效、强大、开放的开发工具。
其柔性的特点,保障了基于平台开发的系统可在.Net平台与J2EE平台上无缝的切换运行。
ES2007业务平台实现业务导向和驱动的软件开发,从根本上解决管理软件开发中的诸多难题,使企业信息系统真正实现“用户主控、随需而变、全局规划、整体集成”的信息化战略。
渗透管理软件的设计、开发、调试、部署,到运行、维护、管控、治理的全生命周期。
中考高效学习软件,要好用
关于中考高效学习软件,给你分享对我帮助很大的速读记忆训练软件。
我练习《精英特全脑速读记忆软件》来激发大脑潜能,提高学习和复习效率。
速读记忆是一种高效的学习、复习方法,其训练原理就在于激活我们“脑、眼”潜能,培养我们直接把视觉器官感知的文字符号转换成意义,形成眼脑直映式的阅读、学习方式,提高阅读速度、整体感知、理解记忆、注意力等方面的能力。
用软件练习,每天一个多小时,一个月的时间,可以把我们的阅读速度提高5倍左右,记忆力、理解力等也会得到相应的提高,最终提高学习、复习效率,取得好成绩。
当然了,软件只能作为辅助,学习的主体是自己。
在学习中要懂得梳理自身学习情况,找出问题所在、最需要提高或最薄弱的地方;其次整理出可利用的时间,做出时间安排表,以每一天为单位;合理分配学习、复习时间,有针对性地制定学习计划,逐一攻克。
我正在自学平面设计。
我想知道就是平面设计里面的网格系统,到底指...
展开全部 下面是网络上推荐的根据我的经验,你可以都适当接触一点,但我认为你可以,好好学学photoshop和coredraw,我经常用!!!! 1 Adobe Photoshop 简体中文 软件类别: 图像处理 Adobe Illustrator CS v11 软件语言: 英文 软件类别: 图像处理 运行环境: Win9x/NT/2000/XP/ Photoshop是著名的图象处理软件 Photoshop是著名的图象处理软件, 为美国ADOBE公司出品。
在修饰和处理摄影作品和绘画作品时,具有非常强大的功能 2 Adobe Illustrator CS v11 Adobe Illustrator是一套被设计用来作输出及网页制作双方面用途、功能强大且完善的绘图软件包,这个专业的绘图程序整合了功能强大的向量绘图工具、完整的PostScript输出,并和Photoshop或其它Adobe家族的软件紧密地结合。
第10版增加了诸如Arc、矩型网格线(Rectangular Grid)以及坐标网格线(Polar Grid)工具等新的绘图及自动化优点;增加编辑的灵活度以及标志(编辑主要的对象或图像复制)。
你可以运用笔刷及其它如合并、数据驱动坐标等在工具列上的创造工具,帮助你建立联结到数据库的样版。
新的Illustrator还提供更多的网络生产功能,包括裁切图像并支持可变动向量绘图档(SVG)增强。
3 Fireworks MX 2004 简体中文版软件语言: 简体中文 软件类别: 图像处理 4 AutoCAD 设计 5 Corel DRAW 6 三维动画软件 3D Studio(3DS)。
它的全称是 3-Dimension Studio,译成中文应该是“三维影像制作室”。
3D Studio MAX(以下简称 MAX)是以 3DS 4.x为基础的升级版本,它以全新的 Windows界面及更强大的功能展示在我们面前。
用MAX来制作三维动画就像是当一个大导演——一切的角色、道具、灯光、摄像机、场景(包括如云、雾、雪、闪电等特效场面)及配音、镜头的剪辑合成等等都任你来安排处理。
如果你是一位设计家,用MAX来设计产品模型的感觉就像是雕塑家和魔术师,复杂的模型几乎是在瞬间就奇迹般地建立起来了。
而用MAX修改创建的模型更是轻而易举的事,完全可以把宝贵的时间和精力集中用在使设计更加完美更加理想上。
无论是出于何种目的使用 MAX,一定会充分体会到用计算机工作时的那种“工作就是玩,玩就是工作”的快感。
可以毫不夸张地说,哪里需要三维设计、哪里需要三维动画,哪里就需要MAX。
MAX适合于从事下列任何一种职业的专家或业余爱好者:电影特技、立体和影视动画广告设计、工业设计、建筑和室内装潢设计、包装与装潢设计、三维游戏开发、软件开发程序员(制作软件片头)、教学多媒体演示制作、军事科学研究和物理、化学或生物化学研究以及所有对三维动画和立体造型感兴趣的广大电脑玩家等。
7 MAYA因其强大的功能在3D动画界造成巨大的影响,已经渗入到电影、广播电视、公司演示、游戏可视化等各个领域,且成为三维动画软件中的佼佼者。
《星球大战前传》、《透明人》、《黑客帝国》、《角斗士》、《完美风暴》、《恐龙》等到很多大片中的电脑特技镜头都是应用MAYA完成的。
逼真的角色动画、丰富的画笔,接近完美的毛发、衣服效果,不仅是影视广告公司对MAYA情有独钟,许多喜爱三维动画制作,并有志向影视电脑特技方向发展的朋友也为MAYA的强大功能所吸引。
8 非线性编辑软件 Adobe Premiere 由ADOBE公司出品的PREMIERE,功能强大,操作方便,在非编软件中处于领先地位.由它首创的时间线编辑概念已成为行业标准.PREMIERE是一个集音频视频为一体的后期非线性编辑软件,其通用性,兼容性很强,支持众多的图形,视频,音频格式,还支持很多强大的第三方插件,并支持市面上大多数视频卡,成为非线性编辑系统中的核心软件,是影视后期制作中进行非线性编辑的有力工具.PREMIERE广泛应用在视频制作的各个领域:电视,多媒体,游戏,网络制作等许多方面,具有广泛的实用性 平面设计及广告设计与动画、电视媒体基本全了
360软件研发管理体系混乱,关键设计未经严格评审,而是交由程序员...
展开全部 我个人对美国这方面了解更多,就先从美国说一说。
我相信硬件工程师和软件工程师的就业前景应该是提这个问题的人最想知道的方面。
就我所了解的,在现在以及可预见的未来,这个行业对软件工程师的需求绝对是碾压硬件工程师的。
也就是说,招软件工程师的职位比硬件工程师的职位要多的多,而且软件工程师找工作上来说会比硬件工程师更容易。
先从企业的角度来讲讲。
我个人认为造成这个差异的原因,第一个是基本上所有的公司,从初创公司到全球百强,都有对软件工程师的需求。
现在哪个公司不需要几个码农来开发app,或者做个web。
但是做硬件这种工作并不是所有公司会去做的。
举个简单的例子,摩根大通银行在我们学校的招聘会上有明确招软件工程师,expedia在我们学校招聘会上也明确招聘软件工程师,如果这个两个公司突然说要招电子工程师,这不是逗我吗。
。
而且哪怕是硬件公司,也需要大量的软件工程师来支持硬件前端工作。
第二点我觉得要归功于现在的创业潮。
不管在美国在中国互联网创业都是趋势,但是可以说绝大部分的初创互联网公司做的都是软件方向。
有个点子,有点技术,找几个合伙人抱着电脑就能开干了。
但是初创公司要专注做硬件开发就比较难了,因为成立设计硬件公司的门槛和起步开销比较大。
所以这也导致大部分初创公司以互联网为主,能做的了硬件设计的公司基本上都是处于垄断地位的大企业。
第三个很重要的原因就是硬件设计在现在来看已经是相对成熟的技术,我甚至有ee的同学跟我说大部分硬件的东西已经步入夕阳产业的范畴,因为很多东西已经成了规范,也因为很多东西被自动化所取代。
前一阵子全球大牌的硬件公司才裁了不少人,intel更是裁掉了接近20%的硬件工程师。
但是互联网热从90年代开始到现在热头还没过,而且未来诸多产业如人工智能,机器学习,图像识别,大数据都才刚起步,所以还有一定的上升空间。
还记得当初我们学校的初创公司招聘会上几十家公司只有一家招硬件工程师,而且还是偏软件的硬件工程师,剩下的公司里98%都在找会码代码的人;大企业的招聘会上才能见到nvidia, arm, intel, TI 的身影,但是哪怕是这样基本上所有的公司招牌上都会有大写加粗的招computer science的字样。
。
再从个人的角度来讲。
想成为一名软件工程师找到工作的门槛远比成为一名合格的硬件工程师低很多。
要想以软件工程师的身份混到个饭碗,能学两门语言学好常用的数据结构刷点题就基本上能找到薪水小几千的岗位。
我甚至知道国内有专门的软件工程师培训机构,那种专门教java和算法,两个月速成班,而且所声称的学生就业率还挺高的。
但是要想成为一名合格的硬件工程师,不是科班出身的不好好学几门模电数电信号逻辑设计的课,没有在学校实验室里自己焊点电路做实践,连简历都发不出去。
而且现在要想学个什么语言框架,网上搜一搜“”xxx语言入门教程“”就有非常丰富的资源,但是要是在网上搜“如何学好超大规模集成电路设计”,要想找到可以受用的资源几乎是不可能的。
而且就我所参加的招聘会来说,如果有招硬件工程师基本都要求有研究生的学位,但是对软件工程师的要求基本上就是熟悉算法数据结构,会web编程有相关经历就够了。
软件工程师很多时候吃的是体力,硬件工程师大部分时候是吃经验,所以硬件工程师一般得有一定的经历积淀才能脱颖而出。
尤其像模电这种上手程度很高的方向,没个十年八年的相关经验根本不算学成出师。
所以说本身对从业者的资质要求更高,也是硬件工程师不好找工作的原因之一。
上面是我所认为的短时间内软件工程师就找工作方面来说会比硬件工程师更容易的原因。
但是这并不意味着会编程就肯定找得到工作,也不意味着硬件产业就会低迷下去。
软件工程师的职位多,但是每年从事这个职业的人也更多,虽然我认为现在软件工程师短期内还没有出现饱和的趋势(毕竟那么高的工资还摆在那),但是总有一天这个行业也会像金融产业一样降温(人才供过于求)。
硬件产业虽然大部分已经有步入夕阳产业的趋势,但是曾经一度被宣称没啥好搞的供电网络最近也被smart grid搞得神乎其神,美国top5的高校都还设立了相关实验室。
此外,现在物联网,车联网,智能家居的概念被炒得火热,我相信等相关成熟的支持技术(能量采集,低功耗通信)以及统一的开发平台一旦出现,硬件工程师的需求只会更多,虽然这些产品依旧只有那些有背景的大公司才做得动(不过因为欧美国家电子产业上的封锁,国家也在硬件设计上砸了很多银子,初创企业也会慢慢增加,相信国内的相关机遇也会更多)。
而且毕竟软件产业毕竟还是依靠硬件,如何设计低功耗,高稳定性,能够承载大吞吐量计算量的硬件也是这个产业的挑战,毕竟人工智能,机器学习,视觉处理等领域是很吃硬件计算量的。
没有强大的硬件支持,阿狗要想打败李世乭还是痴心妄想吧。
2. 工作常态 现在在一家设计为设计硬件的公司所设计软件的百强软件公司实习,做的工作大部分还是偏软件,所以本身对工作常态也并没有非常深入的自己的感受。
但是就我观察身边的同事以及跟别人的交...
转载请注明出处51数据库 » 程序员 高效软件 gridmove
我这鸿鹄岂知你燕雀之志哉