java - 编程新手, double 不会添加

标签 java integer double

我似乎无法获得 double 值来添加我做错了什么?

import java.util.Scanner;

public class Practice_2_2
{
   public static void main(String[] args)
   {
      Scanner input = new Scanner(System.in);

     //Values
     System.out.println("Enter the two numbers");
     double R = input.nextDouble();
     double T = input.nextDouble();

     //Calculate sum
     double sum = (R + T);

     //Calculate difference
     double difference = (R - T);

     //Calculate product
     double product = (R * T);

     //Display results
     System.out.println("The sum of R and T=" +R + +T);
     System.out.println("The difference of R and T=" +R - +T);
     System.out.println("The product of R and T=" +R * +T);
   }
} `

当我加 5 作为数字时,它告诉我总和是 5.05.0,当我尝试减法时,它说“-”不是有效的操作。我是个新手,所以尽量放轻松

谢谢

最佳答案

这可能有点技巧,但基本上,Java 会将每个值转换为其 String 表示形式,然后将它们作为单个 String 添加在一起

如果R = 5T = 1,则

System.out.println("The sum of R and T=" +R + +T);

会输出类似...

The sum of R and T=51

相反,您需要首先将计算包装在优先级组中,以便允许它们在转换为 String 之前进行处理,例如...

System.out.println("The sum of R and T=" + (R + T));

这不会输出更像......的东西

The sum of R and T=6

其他语句的相同组...

System.out.println("The difference of R and T=" + (R - T));
System.out.println("The product of R and T=" + (R * T));

括号可以确保运算结果在整体应用之前先执行...

这适用于“R 和 T 的总和=” + (R + T) Java 将首先解析 R + T,然后将该结果连接到前面的结果形成最终结果的String值...

关于java - 编程新手, double 不会添加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25518974/

相关文章:

C 程序从 s64 到 double 的转换错误?

c++ - 双链表类上的迭代器

java - 多次启动 Android Java 服务

c - 如何将整数表示为其质因数的乘积?

java - 无法从sqlite数据库android中删除行

c - (C) 能够取消和退出的整数计算器

java - 在 Java 运行时创建变量

java - Java 中使用 double 保持精度

java - 有没有办法使用通用的 Spring Data JPA 存储库实现?

java - JSF:丰富的数据表过滤、动态列和传递参数