「java减法负数」java 负数除法
今天给各位分享java减法负数的知识,其中也会对java 负数除法进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
Java如何计算两数相减为负数的同比
//JAVA编程:四则运算(接收用户输入的2个操作数,和运算符),计算之后,输出结果~~~~
import java.util.Scanner;
public class 四则运算 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入第一个数字:");
int a = sc.nextInt();
System.out.print("请输入运算符号:");
String str = sc.next();
char ch = str.charAt(0);
System.out.print("请输入第二个数字:");
int b = sc.nextInt();
switch(ch)
{
case '+':
System.out.println(a+"+"+ b + "="+(a+b));
break;
case '-':
System.out.println(a+"-"+ b+ "="+(a-b));
break;
case '*':
System.out.println(a+"*"+ b+ "="+(a*b));
break;
case '/':
if(b==0){
System.out.println("被除数为零,运算无意义!");
break;
}
else {
System.out.println(a+"/"+ b+ " = "+(a/b));
break;
}
default:
System.out.println("运算符是无意义字符!");
break;
}
}
}
~~~~~~~~
java 时间(Date)相减为何出现负数?
你的问题其实跟日期没关系,你的问题其实可以描述为下面这样:
long diff = 2160000000;
int result = (int)(diff)/1000/60/60/24;
System.out.println(result);
为什么经过计算后result结果为负数,原因是因为在java语言中int类型的取值范围是:-2147483648~2147483647,而你给的long型的diff超出了2147483647的最大值,导致最高位符号位变成了1,于是经过强制类型转换(int)(diff)之后,已经就是一个负数了,所以除法运算的结果也就成了负数。而当diff等于2073600000的时候,这个值并没有超出int类型的范围,所以计算出的结果是正数
java a=a-b等于是负数为什么显示的还a原来的值
你这样写执行顺序是先赋值再进行减法运算,所以还是原来的值。也就是说a=a 然后才是a-b
如何用java写负数的正则表达式
String express = "-3-4";
//express = "-3+4";
//express = "3+4";
//express = "3-4";
//清除空格,避免无法匹配
express = express.replaceAll(" ","");
Matcher m = Pattern.compile("(-?\\d{1,})+?(-?\\d{1,})").matcher(express);
if(m.find()){
double one = Double.parseDouble( m.group(1));
double two = Double.parseDouble( m.group(2));
System.out.println(one+two);
}
用正则就彻底一点,直接取结果计算, 正数、负数都当成一个数。
减法当作 加法 加负数就好,默认有个隐形的加号, 匹配并捕获完整的数字直接加法,不用自己在计算结果的时候写 负号。
java减法负数的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java 负数除法、java减法负数的信息别忘了在本站进行查找喔。
发布于:2022-11-22,除非注明,否则均为
原创文章,转载请注明出处。