相关疑难解决方法(0)

Java中C#'var'关键字的等价物是什么?

在C#中使用var关键字是隐式类型声明.var的Java等价语法是什么?

java var keyword

254
推荐指数
10
解决办法
11万
查看次数

Java 10中"受限关键字"和"保留类型名称"之间的概念差异是什么?

Java 10附带了新的局部变量类型推断.令牌var可用于减少声明变量时所需的样板.例如

var s = "hello";
Run Code Online (Sandbox Code Playgroud)

根据什么类型的令牌在Java 10中完全是"var"?这个新令牌不是"关键字",而是"保留类型名称".因此,单词"var"仍然可以用作变量名,它保持与现有代码的向后兼容性.

var var = "you can do this";
Run Code Online (Sandbox Code Playgroud)

当在Java 9中引入"模块"功能时,这个新令牌的类型(以及其他9个相关令牌)被称为"受限制的关键字".也就是说,它们仅被视为特定上下文特定限制下的关键字.例如,您仍然可以使用称为模块的变量.

当新的语言功能以不会破坏现有用户定义符号的方式添加到C++时,它们被称为"上下文相关关键字".

varJava 10中新的"保留类型名称" 标记与"上下文相关关键字"或"受限制关键字" 之间是否存在概念差异.也就是说,var在某些特定于上下文的限制下,新令牌不仅仅是一个关键字.如果是这种情况,为什么不将它简单地添加到"受限制的关键字"列表中?

为了进一步增加我的混淆,JLS的当前草案版本说:

字符序列var通常被视为标识符,但在某些特殊情况下,其行为就像是关键字一样.

这个定义听起来像是一个"受限制的关键字".

java java-10

20
推荐指数
1
解决办法
824
查看次数

var与其他关键字有何不同?

我刚刚发现您可以将其var用作字段名。

var var = "";
Run Code Online (Sandbox Code Playgroud)

为什么会这样呢?作为字段名的任何其他关键字将无法编译。

var string = ""; // error
Run Code Online (Sandbox Code Playgroud)

c# c#-3.0

5
推荐指数
1
解决办法
108
查看次数

如何仅捕获 ArrayList 中的重复元素?

我需要在我的ArrayList. 我不需要删除重复项,我需要将它们添加到另一个ArrayList. 下面是一个例子:

ArrayList<String> var = new ArrayList<>();
var.add("a");
var.add("b");
var.add("b");
var.add("c");
Run Code Online (Sandbox Code Playgroud)

因此,如您所见,有 2 个重复元素(b 和 b)。我需要将它们添加到另一个 ArrayList。

所产生的ArrayList在这种情况下应该是[b,b]。我怎样才能做到这一点?

java arraylist duplicates java-stream

4
推荐指数
1
解决办法
203
查看次数

Java 10 中的 var 是什么,可与 JavaScript 相媲美?

我正在阅读 Java 10 中发布的新功能,我发现了这一点:

Java 10var作为保留类型名称引入以减少冗长。它可以用作变量、方法和包名,但我们不能将其用作类或接口名。

是否var类似于varJavaScript 中的关键字?Javavar和 JavaScript之间究竟有何异同var

java java-10

2
推荐指数
1
解决办法
3313
查看次数

标签 统计

java ×4

java-10 ×2

arraylist ×1

c# ×1

c#-3.0 ×1

duplicates ×1

java-stream ×1

keyword ×1

var ×1