我已经获得了一些包含<>的java代码运营商。这个算子的功能是什么?。
if(x <> 0) {
doSomething();
}
我以前从未见过它,而且它不在http://docs.oracle.com/的操作页面上 我已经把它写成了一个错字,但它在同一段代码中出现了两次。
答案 0 :(得分:3)
if (x <> 0) {
doSomething();
}
这在Java 2 中不是有效的运算符 1 。所以它不会编译。如果要使用不等运算符,则必须使用!=
运算符:
if (x != 0) { // this is valid use in Java
doSomething();
}
您可以在此找到all valid operators in Java的列表。
使用示例&lt;&gt;泛型中的符号:
使用以下格式定义泛型类:class name<T1, T2, ..., Tn> { ... }
在这里,您可以看到&#34;您的符号&#34;:
由尖括号(&lt;&gt;)分隔的类型参数部分如下 班级名称。它指定了类型参数(也称为类型) 变量)T1,T2,...和Tn。
有关详细信息,请查看Java generics。希望这会让事情更加清晰。
1 在实例化泛型类型时,仅在Java中使用符号<>
。
2 符号<>
在SQL语言中有效。查看SQL operators。
答案 1 :(得分:2)
这不是有效的Java代码,它会导致编译错误:
if (x <> 0)
表达上述内容的正确方法是:
if (x != 0)
允许diamond operator的唯一部分是实例化泛型类型,并且仅从Java 7开始。例如:
List<Integer> numbers = new ArrayList<>();
答案 2 :(得分:1)
这很可能是程序员错过的一个错误,例如,当您首先键入小于号时,某些ide会自动添加大于号。
e.g。 eclipse会将<
转换为<>
,你只需要记住删除第二个操作数。
此运算符<>
实际上与其他语言中的(!=
)运算符不相等,例如sql。
最后像其他人一样说,这个<>
表达式适用于java中的泛型。