问题标签 [ocpjp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ocpjp - NumberFormat 类的 setMaximumDigits 方法
请证明以下代码的输出。
代码:
导入 java.text.NumberFormat;导入 java.text.ParseException;
公共类 Number_format_Demo {
}
输出:
111.234 222.5678
问题:
如果我们将最大位数设置为 3,那么第二行输出如何正确?
java - java.util.Arrays.asList 与 removeIf 一起使用时抛出 UnsupportedOperationException
我正在为接下来 2 个月的 OCPJP 8 考试做准备,目前我这个引起了我的注意,因为我不明白为什么
这显然可以编译!但是当你运行它时,你会看到这样的异常
我需要一些帮助来理解为什么 asList 方法不能与 removeIf 一起使用?我假设它将返回一个实现 removeIf 方法的 ArrayList 实例!
任何答案将不胜感激。
干杯!
java - 静态修饰符会改变java中类成员的访问级别吗?
我正在阅读有关 Java 7 认证的 OCA 和 OCP 的书,我正在尝试使用 Java 8 进行本书的练习,我注意到一些连线的东西。
我有 Class1 类如下:
如您所见, importantMethod()方法的修饰符是受保护的静态的,并且包是cert,正如书中所解释的,我希望另一个包中的另一个类,在我的例子中为Class2,如下所示,可以访问importantMethod()方法只能通过继承,但事实证明,从Class2我也可以通过Class1的实例访问importantMethod()方法。
2 类:
如果我从Class1中删除static修饰符,它会在尝试从Class2访问importantMethod()方法时给出预期的错误:
我的问题是,非访问修饰符会改变类成员的访问级别吗?
java-8 - TreeSet.tailSet 返回 SortedSet,据说可以更新,反之亦然,但在我编码时不是
我试图理解 TreeSet.tailSet 它很容易实现,但我对文档感到困惑:
public SortedSet tailSet(E fromElement) 从接口复制的描述:NavigableSet 返回此集合中元素大于或等于 fromElement 的部分的视图。返回的集合由该集合支持,因此返回集合中的更改会反映在该集合中,反之亦然。返回的集合支持该集合支持的所有可选集合操作。返回的集合将在尝试插入超出其范围的元素时抛出 IllegalArgumentException。
https://docs.oracle.com/javase/7/docs/api/java/util/TreeSet.html#tailSet(E)
它说
他返回的集合是由这个集合支持的,所以返回集合中的变化会反映在这个集合中,反之亦然
但我没有看到它在我的代码测试中起作用
注意:这是为我的 OCPJP 8 准备的。
这是我的代码片段
这是输出
现在如您所见,我尝试更新
并从其源 Set 对象中检查它
并且源集对象中仍然存在“3Mark Anthony”。它没有更新。反之亦然,正如您在下一行代码中看到的那样。
有人可以帮我理解什么是错的吗?我怀疑javadoc错过了它,可能是我的理解是错误的。
PS。通往 OCPJP 8 之路
java - Java 泛型类型参数不在其范围内
准备 OCPJP 6 考试(这就是我使用 Java 1.6 编译器的原因) 我注意到一些关于 Java 泛型的不清楚的地方。考虑以下代码:
当我尝试编译代码(使用 1.6 编译器)时,出现错误:
类型参数 V 不在其范围内
尽管上面的代码不可用,但我想知道为什么编译器认为类型<? super V>
和<? extends V>
匹配绑定的类类型但<V>
不是(因为 V 匹配这两个边界)。
我不打算修改该代码,我想了解它。该代码取自示例 OCPJP 6 考试问题,询问“哪一行将编译?”
java - Java 8 Comparator 中的方法链是如何工作的?
我正在为 Java 8 证书做准备,以下让我有点困惑,也许有人可以帮我解决这个问题?在示例中,对 Squirrel 类进行了建模。它有名字和重量。现在您可以创建一个 Comparator 类来使用这两个字段对这个东西进行排序。所以首先按名称排序,然后按重量排序。像这样的东西:
到目前为止一切顺利.. 但令人费解的部分。在代码示例下方,他们声明您可以使用方法链接将其编写在一行中。也许我误解了,但是当我链接比较和thenComparing部分时,我得到了一个编译错误。这与比较的对象类型有关(首先是 String,然后是 int)。
为什么当我放入中间变量而不是链接时它会起作用?是否有可能完全链接?
java - OCPJP 8 什么是使用 NIO2 的符号链接
我正在尝试获得 Java 8 认证,我很久以前就已经拥有 Java 6,而 Java 7 是我的弱点,因为我没有使用它,我有点困惑。
什么是符号链接??
根据维基百科。
我的问题是。
Java如何识别符号链接,我的意思是当它打印为真时?
也许这是一个愚蠢的问题,但我真的很想知道!
java - Java 比较器接口
我对 Comparator 接口有一个误解,它的方法 compare 这里是下面的代码,我想知道为什么 compare 方法返回 -33 我相信它应该返回 33
java - Can Stream's SKIP method making an infinite stream finite?
"The limit()
and skip()
methods make a Stream
smaller. They could make a finite stream smaller, or they could make a finite stream out of an infinite stream. The method signatures are shown here:
The following code c...."
The above is an excerpt from OCP java 8 book. When it said "could make a finite stream out of an infinite stream", did they mean it in both the methods together or alone? I can imagine how limit()
would make an infinite stream smaller, but how skip()
alone would accomplish that? Is there a way or the wording in the documentation needs to be clearer?
java - OCPJP 6.0 升级
我在 6 年前获得了 OCPJP 6.0 认证。我计划将其升级到最新的 Oracle 认证之一。您能否推荐我是否应该参加 OCPJP 8.0/11.0 考试的升级?
另外,如果有其他更好的认证,您能提出任何建议吗?