一、编写一个程序,用户输入两个数,求出其加减乘除,并用消息框

显示计算结果。

1.设计思想:从键盘输入两个数字和运算符,然后计算。将输入的数字及运算符由字符型转换为整型,再用if判断输入的运算符,根据运算符进行对应的+-*/运算,最后输出结果。

2.程序流程图:

3.Calculate.java 源程序代码:

package demo;

import javax.swing.JOptionPane;  // import class JOptionPane

public class Calculate {

public static void main( String args[] )

{

String firstNumber,   // first string entered by user

secondNumber, // second string entered by user

obj1;                    //运算符 entered by user

int number1,          // first number to add

number2,          // second number to add

obj2,                //运算符

sum,            // sum of number1 and number2

subtract,     //number1 和 number2的差

multiply,      //number 和 number2的乘积

divide;          //number1÷number2

// read in first number from user as a string

firstNumber =

JOptionPane.showInputDialog( "请输入第一个数:" );

// read in second number from user as a string

secondNumber =

JOptionPane.showInputDialog( "请输入第二个数:" );

//输入+-*/符号

obj1=

JOptionPane.showInputDialog( "请输入数字1/2/3/4中任意一个,分别代表的是 + - * / :" );

// convert numbers from type String to type int

number1 = Integer.parseInt( firstNumber );

number2 = Integer.parseInt( secondNumber );

obj2 = Integer.parseInt( obj1);

//计算加减乘除

sum = number1 + number2;

subtract =  number1 - number2;

multiply =  number1 * number2;

divide =  number1 / number2;

//匹配运算符与运算结果

if(obj2==1)

JOptionPane.showMessageDialog(

null, number1 +"+"+number2+"  = " + sum,

"Results",JOptionPane.PLAIN_MESSAGE );

else if(obj2==2)

JOptionPane.showMessageDialog(

null, number1 +"-"+number2+"  =" + subtract,

"Results",JOptionPane.PLAIN_MESSAGE );

else if(obj2==3)

JOptionPane.showMessageDialog(

null, number1+"*"+number2+"  =" + multiply,

"Results",JOptionPane.PLAIN_MESSAGE );

else if(obj2==4)

JOptionPane.showMessageDialog(

null, number1+"/"+number2+"  = " + divide,

"Results",JOptionPane.PLAIN_MESSAGE );

else

JOptionPane.showMessageDialog(

null, "此运算符错误,请重新运行程序并输入",

"Results",JOptionPane.PLAIN_MESSAGE );

// display the results

System.exit( 0 );   // terminate the program

}

}

4.结果:

(1)加法运算:

 

 

(2)减法运算:

 

 

(3)乘法运算:

 

 

(4)除法运算:

 

 

(5)运算符输入错误:

 

 

二、在上网时,我们经常会看到以下这种对话框,要用户输入一个验证码。要求根据Random Str.java:使用类型转换生成六位验证字符串,示例程序每次运行时,都会生成不同的字符串。实现上述用户输入验证码的功能。(可以扩展如何实现整个用户登录界面的设计和功能的实现。

1.设计思想:先用类型转换生成6位随机验证字符串,然后用户输入验证码,判断生成的验证码与用户所输入的是否一致,若一致,验证成功,否则,验证失败。

2.程序流程图:

3.源程序:Yanzhengma.java文件

package demo;

import javax.swing.*;

public class Yanzhengma {

public static void main(String[] args){

//6位随机字符串的生成

String result = "";

for(int i = 0 ; i < 6 ; i ++)

{

int intVal = (int)(Math.random() * 26 + 97);

result = result + (char)intVal;

}

//输入验证码

String input=JOptionPane.showInputDialog("验证码:\n"+result,"

请在此输入以上验证码");

//判断验证码与所输入的是否一致

if(input.equals(result))

{

JOptionPane.showMessageDialog(null, "验证成功!","恭喜!

", JOptionPane.PLAIN_MESSAGE);

}

else

{

JOptionPane.showMessageDialog(null, "对不起,验证失败!

","请重新验证", JOptionPane.PLAIN_MESSAGE);

}

}

}

4.结果:

 

 

5.实验总结:在判断验证码与所输入的是否一致时,我开始编写的程序是

if(input==result),可无论验证码与所输入的是否一致,它都报错。

 

后来想起老师上课讲的“equals()”与“==”等价,于是用了if(input.equals(result)),程序才成功。但现在还是不理解为什么用“==”不行。

 

课堂Java小程序(加减乘除与验证码)的更多相关文章

  1. 输出多行字符的一个简单JAVA小程序

    public class JAVA { public static void main(String[] args) { System.out.println("-------------- ...

  2. [干货教程]仿网易云课堂微信小程序开发实战经验

    本篇文章想跟大家分享下:我们公司“湖北诚万兴科技”最近刚帮客户定制开发.目前已上线的“哎咆课堂”微信小程序的开发经验分享.首先大概介绍下这个小程序所涉及到的主要技术点:微信登录.微信支付.微信小程序F ...

  3. 浏览器兼容java小程序配置说明

    最近在使用的一个web应用系统是内嵌了java小程序,遇到了各种浏览器兼容性问题,现梳理如下: 1.通过以下链接检测当前电脑是否已经安装有java https://java.com/zh_CN/dow ...

  4. 框架一般用作Java应用程序的窗口,而Applet是Java小程序的窗口

    框架一般用作Java应用程序的窗口,而Applet是Java小程序的窗口. 与Frame不同,Applet是在网页中显示的,也可以通过添加Panel进行组件布局. package TomAwt; im ...

  5. 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用

    有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...

  6. 2015.11.27初识java一集简单的java小程序

    JAVA配置环境变量方法: 1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME变量值:D:\Java\jdk1.7.0_ ...

  7. java的数据类型,几个java小程序

    1:求圆的面积 还好看了c++,不然直接看这课件还真是看不懂……加油吧 要从键盘读入数据可以用Scanner类的nextlnt()或者nextDouble()方法,首先创建Scanner类的一个实例, ...

  8. 微信小程序之获取验证码js

    在微信小程序中怎样实现获取验证码的倒计时功能捏,倒计时的原理是一样一样的,就是某些地方需要注意. 第一步:结构 <view class='get-code' wx:if="{{!isS ...

  9. 微信小程序【获取验证码】倒计时效果

    最近开始接触微信小程序,会记录一些相关的小功能——例如这次是点击[获取验证码]按钮出现的倒计时效果. 原文: http://blog.csdn.net/Wu_shuxuan/article/detai ...

随机推荐

  1. Singleton(单例模式)

    一. /** * lazy man(不是线程安全的) * @author TMAC-J * */ public class Singleton { private static Singleton i ...

  2. Mac下打开eclipse 始终提示 你需要安装Java SE 6 Runtime

    Mac下打开eclipse 始终提示 你需要安装Java SE 6 Runtime        周银辉 我的mac os 版本是10.9.2,  JDK配置得好好的,但打开eclipse时还是提示需 ...

  3. Slave2: no datanode to stop(HADOOP_PID_DIR)

    HADOOP_PID_DIR 本想在环境变量里设置,在相关文件里直接尹用,但是我想起来那时候的JAVA_HOME都不行,还是一个一个设置吧. 有时候,我们对运行几天或者几个月的hadoop或者hbas ...

  4. Reading and Writing CSV Files in C#

    Introduction A common requirement is to have applications share data with other programs. Although t ...

  5. Android 反编译apk 详解

    测试环境: win 7 使用工具: CSDN上下载地址: apktool (资源文件获取)  下载          dex2jar(源码文件获取) 下载        jd-gui  (源码查看)  ...

  6. 按照 where id in ()排序

    select * from ibs6_terminal_adv_inf where id in (16,14,15) order by find_in_set(id,'16,14,15')

  7. 强大的Mockito测试框架(转)

    1.自动生成Mock类在需要Mock的属性上标记@Mock注解,然后@RunWith中配置Mockito的TestRunner或者在setUp()方法中显示调用MockitoAnnotations.i ...

  8. iOS 使用UIBezierPath类实现随手画画板

    在上一篇文章中我介绍了 UIBezierPath类 介绍 ,下面这篇文章介绍一下如何通过这个类实现一个简单的随手画画板的简单程序demo,功能包括:划线(可以调整线条粗细,颜色),撤销笔画,回撤笔画, ...

  9. ftp服务器端的安装及配置

    搭建过程 安装 vsftp 服务(yum 安装即可) 配置/etc/vsftpd/vsftpd.conf   anonymous_enable=NO #禁止匿名登录 local_enable=YES ...

  10. No bean named &#39;cxf&#39; is defined

    1.错误描述  严重:Exception starting filter CXFServlet        org.springframework.beans.factory.NoSuchBeanD ...