人気の面接質問と回答・オンラインテスト
面接対策、オンラインテスト、チュートリアル、ライブ練習のための学習プラットフォーム

集中型学習パス、模擬テスト、面接向けコンテンツでスキルを伸ばしましょう。

WithoutBook は、分野別の面接質問、オンライン練習テスト、チュートリアル、比較ガイドをひとつのレスポンシブな学習空間にまとめています。

面接準備

模擬試験

ホームページに設定

このページをブックマーク

メールアドレスを登録

Java 15 面接の質問と回答

関連する比較

Java 14 vs Java 15Java 15 vs Java 16

質問 1. What is String.formatted() in Java 15?

We could previously replace placeholders in a string as follows, for example:

String message =    String.format(        "User %,d with username %s logged in at %s.",        userId, username, ZonedDateTime.now());

Starting from Java 15, we can use an alternative syntax:

String message =    "User %,d with username %s logged in at %s."        .formatted(userId, username, ZonedDateTime.now());

It makes no difference which method you use. Both methods will eventually call the following code:

String message =    new Formatter()        .format(            "User %,d with username %s logged in at %s.",            userId, username, ZonedDateTime.now())        .toString();

So the choice is ultimately a matter of taste. I quickly made friends with the new spelling.

役に立ちましたか? コメントを追加 コメントを見る
 

質問 2. What is String.stripIndent() in Java 15?

Suppose we have a multi-line string where each line is intended and has some trailing spaces, such as the following. We print each line, bounded by two vertical bars.

String html = """
<html> s
<body> s
<h1>Hello!</h1>
</body> s
</html> s
""";

html.lines()
.map(line -> "|" + line + "|")
.forEachOrdered(System.out::println);
Code language: Java (java)

As you learned in the first chapter, the alignment of a text block is based on the closing quotation marks. The output, therefore, looks like this:

|  <html>     |
| <body> |
| <h1>Hello!</h1>|
| </body> |
| </html> |

Using the stripIndent() method, we can remove the indentation and trailing spaces:

html.stripIndent()
.lines()
.map(line -> "|" + line + "|")
.forEachOrdered(System.out::println);

The output is now:

|<html>|
| <body>|
| <h1>Hello!</h1>|
| </body>|
|</html>|

役に立ちましたか? コメントを追加 コメントを見る
 

質問 3. What is String.translateEscapes() in Java 15?

Occasionally we get to deal with a string that contains escaped escape sequences, such as the following:

String s = "foo\\nbar\\tbuzz\\\\";System.out.println(s);

The output looks like this:

foo\nbar\tbuzz\\

Sometimes, however, we want to display the evaluated escape sequences: a newline instead of "\n", a tab instead of "\t", and a backslash instead of "\".

Until now, we had to rely on third-party libraries such as Apache Commons Text for this:

System.out.println(StringEscapeUtils.unescapeJava(s));

Starting from Java 15, we can avoid the additional dependency and use the JDK method String.translateEscapes():

System.out.println(s.translateEscapes());

The output now reads:

foobar     buzz

役に立ちましたか? コメントを追加 コメントを見る
 

質問 4. What is CharSequence.isEmpty() in Java 15?

Also new is the default method isEmpty() in the CharSequence interface. The method simply checks whether the character sequence's length is 0:

default boolean isEmpty() {  return this.length() == 0;}

This method is thus automatically available in the Segment, StringBuffer, and StringBuilder classes.

String and CharBuffer, which also implement CharSequence, each have their optimized implementation of isEmpty(). With String, for example, the call to length() is unnecessarily expensive because, since Java 9 (JEP 254 "Compact Strings"), the string's encoding must also be taken into account when calculating its length.

役に立ちましたか? コメントを追加 コメントを見る
 

質問 5. What is the change of Helpful NullPointerExceptions in Java 15?

Helpful NullPointerExceptions, introduced in Java 14, are enabled by default in Java 15 and later.

"Helpful NullPointerExceptions" no longer only show us in which line of code a NullPointerException occurred, but also which variable (or return value) in the corresponding line is null and which method could therefore not be called.

You can find an example in the article linked above.

役に立ちましたか? コメントを追加 コメントを見る
 

ユーザー評価で最も役立つ内容:

著作権 © 2026、WithoutBook。