Javascript 这两个java代码之间的区别是什么?

Javascript 这两个java代码之间的区别是什么?,javascript,Javascript,我已经运行了我的代码,它是序列中的第一个,然后我运行了示例代码,它是序列中的第二个。序列中的第二个将运行,但第一个将不运行。我做错了什么?我已经仔细检查了代码,没有发现任何重要的差异。编码bat告诉我错误是“找不到符号” 符号:类别变量行:2“ 代码如下: public int diff21(int n) { var diff = Math.abs(n - 21); if (n > 21) { return diff*2; } else { return dif

我已经运行了我的代码,它是序列中的第一个,然后我运行了示例代码,它是序列中的第二个。序列中的第二个将运行,但第一个将不运行。我做错了什么?我已经仔细检查了代码,没有发现任何重要的差异。编码bat告诉我错误是“找不到符号” 符号:类别变量行:2“

代码如下:

public int diff21(int n) {
  var diff = Math.abs(n - 21);
  if (n > 21) {
    return diff*2;
  } else {
    return diff;
  }
}
public int diff21(int n) {
  if (n <= 21) {
    return 21 - n;
  } else {
    return (n - 21) * 2;
  }
}
public int diff21(int n){
var diff=数学绝对值(n-21);
如果(n>21){
返回差*2;
}否则{
返回差;
}
}
公共int diff21(int n){

如果(nJava没有关键字'var',则需要显式声明一个变量


在您的情况下,您需要将diff声明为“int”

var diff
意味着您正在声明一个名为
diff
的变量,类型为
var
。什么是
var
?编译器不知道,因此也不知道错误。

var
更改为
double
,因为
var
不是Java p基本数据类型。您也可以使用
int
,但随后必须键入并强制转换
Math.abs
。如果运行代码,则使用
var
的代码将不会编译

如果您想测试它们,请进行如下更改

public class Test {
public static void main(String[]args){
   System.out.println(diff21(10) +" "+ diff22(15));
}
public static int diff21(int n) {
    int diff = Math.abs(n - 21);
    if (n > 21) {
        return diff*2;
    } else {
        return diff;
    }
}
public static int diff22(int n) {
    if (n <= 21) {
        return 21 - n;
    } else {
        return (n - 21) * 2;
    }
  }
}
公共类测试{
公共静态void main(字符串[]args){
System.out.println(diff21(10)+“”+diff22(15));
}
公共静态int diff21(int n){
int diff=数学绝对值(n-21);
如果(n>21){
返回差*2;
}否则{
返回差;
}
}
公共静态int diff22(int n){

如果(你认为区别是什么?看起来很像家庭作业,
var
应该是int。你认为
var
在Java中做什么?你知道它和JavaScript不一样吗?看起来你需要先阅读一些基本教程,然后再尝试写代码。@Trea704在Java中没有
=
操作符。我建议@Trea704建议您检查您使用的语言,并根据需要更改问题标签。您的代码有很多错误。您的评论也有很多错误,提供了非常不完整的信息,并且没有回答人们问您的问题。
var
不是一种原始类型!您的代码的确切文本是什么错误消息?你认为
var
是什么?你的方法所在的类代码的其余部分是什么?谁告诉你Java有一个
==
操作符?它没有。你看过Java教程了吗?谢谢。我试过了,但把它改回了你看到的代码,因为我已经没有选择了。当我改变时我得到了另一个错误代码,上面写着:缺少“}”或表达式的非法开始。无论我怎么做,我都无法消除这个错误,我只是看不出运行的代码和不运行的代码之间有什么区别。