我只是在试着编一个简单的计算器,它工作得很好...
我现在要做的是包含一个“do while”或“while”循环来重复一个语句,直到用户输入四个基本操作符符号之一。我使用其他方法(if和switch)实现了它,但我想简化它。
此外,我在学习如何在scanner
和JPane
方法中解析字符时也遇到了很多问题。我可以实现使用各种资源在互联网上,但一个简单的方法,将帮助我理解更清楚的逻辑,而不仅仅是实现将是高度赞赏的。
public class MyCalculator{
public static void main (String [] args){
// Let us code a simple calculator
char OP;
System.out.println("This is a simple calculator that will do basic calculations such as :\nAddition, Multiplication, Substraction and Division.");
// Create a scanner object to Read user Input.
Scanner input = new Scanner(System.in);
System.out.println("Enter Any positive number followed by pressing ENTER.");
int firstNum = input.nextInt();
// Need to Loop the below statement till one of the four (+,-,*,/) operator is entered.
System.out.println("Enter your choice of OPERATOR sign followed by pressing ENTER.");
OP = input.next().charAt(0);
System.out.println("Enter your Second number followed by an ENTER stroke.");
int secNum = input.nextInt();
// Various possible Resolution
int RSum = firstNum+secNum;
int RSubs= firstNum-secNum;
int RPro = firstNum*secNum;
double DPro = firstNum/secNum;
// Conditional statements for Processing
Switch (OP){
case '+': System.out.println("The Resulting sum is "+ RSum);
break;
case '-': System.out.println("The Resulting sum is "+ RSubs);
break;
case '*': System.out.println("The Resulting Product is "+ RPro);
break;
case '/': System.out.println("The Resulting Divisional product is "+ DPro);
break;
default : System.out.println("Try Again");
}
}
}
您可以使用如下内容:
while(scanner.hasNext()) {
//some code
int number = scanner.NextInt();
}
但我将按以下方式实现一个计算器:
int num1 = scanner.NextInt();
String op = scanner.Next();
int num2 = scanner.NextInt();
您可以如下所示循环遍历字符串并进行检查:
for (char ch : exampleString.toCharArray()){
System.out.println(ch);
}
您还可以按如下所示遍历字符串:
for (int i=0; i<examplestring.length(); i++) {
char c = examplestring.charAt(i);
}
可以循环直到得到+或-,如下所示:
char operator;
do {
char operator = scanner.next().get(0);
}while(operator != '+' || operator != '-')
您可以循环并打印错误消息,如下所示:
char operator;
do {
char operator = scanner.next().get(0);
if(!isValidOperator(operator)) {
System.out.println("invalid operator");
}
}while(!isValidOperator(operator))
public boolean isValidOperator(char operator) {
if(operator == '+') {
return true;
} else if (operator == '-') {
return true;
}
return false;
}
我试图写一个代码为每个股票价值是75美元或更多添加一个"*"在STK_FLAG列。 ORA-06550:第15行,第21列:PLS-00201:标识符“STK\U FLG”必须声明ORA-06550:第15行,第5列:PL/SQL:SQL语句忽略ORA-06550:第23行,第7列:PL/SQL:ORA-00904:“STK\U FLG”:无效标识符ORA-06550:第17行,第5列:PL/SQ
有一个项目将涉及到sftp文件传输到服务器。我已经尝试使用ftp协议,并选择winscp.exe-sftp作为我的程序来录制。有事件被记录,但没有生成后,我完成了记录。 提前谢了。
声明如下: 我是XSL的新手。我知道href属性需要URI,但是href值如何在上面的语句中解析为URI。此代码是DITA-OT中xhtml插件xsl的一部分。有多个这样的语句。这些是来自根目录的相对路径吗?DITA-OT代码如何解析这些路径?
通常都听到别人说,计算机很牛逼,很聪明,其实计算机一点都不聪明,光是你要跟他沟通,都会气 shi 你,聪明的是在写程序的你。 写程序就是跟计算机沟通,告诉它要做什么。 竟然是这样,那么肯定缺少不了一些沟通逻辑。比如你要告诉计算机在什么情况下做什么?或者在哪个时间点做什么? 这都需要用到逻辑判断。这一章节,主要就是说这个。 目录
很抱歉打扰你们,我是编程新手,一直在这个程序上有问题。 谢了! *********编辑***************我从BMI中删除了int值,但有损转换错误仍然存在。有什么办法解决这个问题吗?
我正在学习java通用编程。我在核心Java(第9版)中看到了这些图表: 我在Java编程综合版第十版简介中看到了这些图表: 但我相信应该是这样的: 有人能告诉我我是否正确吗?