如何通过使用字符串来使用可选类。

huangapple go评论72阅读模式
英文:

How can i use optional class by using string

问题

我正在学习Java 8。我如何将Optional类用作字符串?Eclipse显示要移除参数,因为Optional不是泛型。

String s = "Hi I am karthik";

Optional<String> checkNull = Optional.ofNullable(s);

在Eclipse中显示以下错误:

Optional类型不是泛型;不能使用参数<String>进行参数化。

英文:

I am learning java 8. How can i use in optional class as string? eclipse is saying to remove arguments as optional is not generic.

String s = &quot;Hi I am karthik&quot;;
	
Optional&lt;String&gt; checkNull = Optional.ofNullable(s);

below error is showing in eclipse

> The type Optional is not generic; it cannot be parameterized with arguments &lt;String&gt;

答案1

得分: 2

你在评论中提到你的类名叫做 Optional。这让编译器感到困惑,因为这个类型名称现在是模糊的,所以在这个编译单元(即这个 Java 文件)中,每当你引用 Optional,编译器会认为你指的是自己的类,而不是 java.util.Optional

解决方案:重新命名你的类,以及对应的 Java 文件,换成其他任何名称。

英文:

You stated in the comments that your class is called Optional. That is confusing the compiler because that type name is now ambiguous, so within this compilation unit (i. e. this Java file) every time you refer to Optional, the compiler will think you are referring to your own class, rather than java.util.Optional.

Solution: Rename your class, and the corresponding Java file, to anything else.

答案2

得分: 0

尝试以下:

java.util.Optional<String> checkNull = java.util.Optional.ofNullable("Hi I am karthik");

确保您的 Eclipse 中已经配置了 Java 8 的类路径。因此,请检查您的 IDE 配置。

英文:

Try following:

java.util.Optional&lt;String&gt; checkNull = java.util.Optional.ofNullable(&quot;Hi I am karthik&quot;);

Make sure your eclipse has java 8 in classpath. So, check your IDE configuration.

huangapple
  • 本文由 发表于 2020年7月28日 22:42:14
  • 转载请务必保留本文链接:https://go.coder-hub.com/63136771.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定