我的代码不起作用! Java初学者

时间:2017-04-22 17:49:56

标签: java

public Tier() {

    anzahldertiere++;           

    int sumderzahlen = 5 + 1;
    System.out.println("5 + 1 = " + sumderzahlen);          

    int diffderzahlen = 10 - 2;
    System.out.println("10 - 2 = " - diffderzahlen);        

    int multderzahlen = 3 * 3;
    System.out.println("3 * 3 = " * multderzahlen);          

    int divderzahlen = 27 / 3;
    System.out.println("27 / 3 = " / divderzahlen);         

    int modderzahlen = 10 % 1;
    System.out.println("10 % 3 = " % modderzahlen);
}


 public static void main(String[] args) {
      Tier dasTier = new Tier();
 }

问题,为什么我运行程序时第一个additi工作,但另一个不例如de 10-2一个不会工作。只是第一个。

任何想法?

3 个答案:

答案 0 :(得分:4)

打印时,只使用+符号,然后出现要从中打印值的变量(或方法)。因此,您可以将所有负数或乘法符号更改为+符号。从下次开始,只需使用+标志

anzahldertiere++;           

int sumderzahlen = 5 + 1;
System.out.println("5 + 1 = " + sumderzahlen);          

int diffderzahlen = 10 - 2;
System.out.println("10 - 2 = " + diffderzahlen);        

int multderzahlen = 3 * 3;
System.out.println("3 * 3 = " + multderzahlen);          

int divderzahlen = 27 / 3;
System.out.println("27 / 3 = " + divderzahlen);         

int modderzahlen = 10 % 1;
System.out.println("10 % 3 = " + modderzahlen);

答案 1 :(得分:2)

"10 % 3 = " % modderzahlen这样的事情并不合理。首先,你实际上没有在那里进行操作,你只是附加字符串。

为了说明为什么Java不允许这样做,请考虑如果我"someRandomString" % 10会发生什么。这项行动的结果应该是什么?因此,Java(正确地)认识到对字符串执行*/%等操作没有意义。

答案 2 :(得分:1)

System.out.println("5 + 1 = " + sumderzahlen);    

在上面的代码中你有+要附加,基本上你是说编译器,写在“”之间和它之后放入值sumderzahlen。

试试这个:

int sumderzahlen = 5 + 1;
System.out.println("5 + 1 = " + sumderzahlen);

int diffderzahlen = 10 - 2;
System.out.println("10 - 2 = " + diffderzahlen);        

int multderzahlen = 3 * 3;
System.out.println("3 * 3 = " + multderzahlen);          

int divderzahlen = 27 / 3;
System.out.println("27 / 3 = " + divderzahlen);         

int modderzahlen = 10 % 1;
System.out.println("10 % 3 = " + modderzahlen);