JAVA学习之简单计算器——V1.0

今天简单的尝试了下java编程,写了一个简短的只包含+,-,*,/,的计算器。今天,对该计算器进行一个简单的总结。

首先计算器分为输入,计算,输出3个环节,首先来介绍下输入环节。

输入:

我们需要从键盘上敲击2个需要计算的数字,以及一个运算的运算符。暂时将计算的数字定为整型int。在这里我用的输入类是Scanner类(据了解这个类比BufferedReader更好)。通过Scanner类创建一个对象sc。然后通过调用该对象的方法sc.nextInt()输入整型数据,sc.next()输入字符串数据(nextXxx()中的Xxx是要得到的数据类型)。由此,便得到了需要的数据。

计算:

在计算环节,我需要判断输入的运算符是什么运算符,因此,将得到的运算符与+,-,*,/,4个运算符分别比较,与其中任一相同则进行相应的运算。在此,我用的字符串比较方法是equalsIgnoreCase(“ /*4个运算符*/ ”);因为该方法比较字符串返回的是布尔值,我正好需要对判断结果进行判断。

输出:

在输出环节,就是简单的定义一个整型变量result,然后将计算的结果返回给result。最后用System.out.printf("结果是: %d",result);将结果显示出来。


在编写代码过程中遇到如下几个问题:

1,在输入的时候,当我使用sc.nextLine()时总会直接跳过输入环节,进行代码的下一个操作。经了解该方法是与当前行的分隔符有关,具体情况之后的学习在加深了解。

2,在计算环节,进行字符串比较的时候,期初选用compareTo进行比较,但该比较会返回一个整型数,当2者相等返回0。如果要用则要对该数进一步操作,略显麻烦。


程序代码如下:

import java.util.Scanner;

public class calculate_01
{
		public static int calcu(int num1,int num2,String fuhao)
		{
			if(fuhao.equalsIgnoreCase("+"))
				return (num1+num2);
			else if(fuhao.equalsIgnoreCase("-"))
				return (num1-num2);
			else if(fuhao.equalsIgnoreCase("*"))
				return (num1*num2);
			else if(fuhao.equalsIgnoreCase("/"))
			{
				if(num2==0)
					return 0;
				else
					return (num1/num2);
			}
			else
				return 0;
		}
	public static void main(String[] args)
	{
		int result;
		Scanner sc = new Scanner(System.in);
		System.out.printf("输入第一个数:\n");
		int num1 = sc.nextInt();
		System.out.printf("输入运算符号: \n");
		String fuhao = sc.next();
		System.out.printf("输入第二个数:\n");
		int num2 = sc.nextInt();
		
		
		result = calcu(num1,num2,fuhao);
		
		
		
		System.out.printf("结果为:%s\n",result);
	}
}

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值