who’s watching

はじめに

Java Puzzlers Advent Calendar 2016最終日の記事です。
皆さんはこれまでの問題は解けたでしょうか?難しい問題ばかりで僕の正答率はガタガタでしたw

というわけで今日が最後の問題になります。1ヶ月ほど前に記事にしていたのですが、結構面白い内容だったので今回のカレンダー用に再出題してみます。

続きを読む

Return or not return

次のコードをコンパイルした時、コンパイルエラーが出るメソッドはどれでしょう?複数あります。

public class Main {

    String case1() {
        while (true) {

        }
    }

    private boolean case2 = true;
    String case2() {
        while (case2) {

        }
    }

    private final boolean case3 = true;
    String case3() {
        while (case3) {

        }
    }

    String case4() {
        boolean case4 = true;
        while (case4) {

        }
    }
}
続きを読む

IntelliJで寿司を回す

はじめに

この記事はJetBrains Advent Calendar 2016の記事です。

最近Twitterではエディタで寿司を流すのが流行っているそうです。私の観測した範囲ではvimemacsで寿司を流している方が居るみたいです。
そんな最近の流行に乗ってIntelliJでも寿司を流すことにしました。

続きを読む

Unmodifiable – Java Puzzlers Advent Calendar3日目

import java.util.*;
 
public class Main {
    public static void main(String[] args) {
        List<String> strings = new ArrayList<>(Arrays.asList("aaa", "bbb", "ccc"));
        List<String> unmodifiableList = Collections.unmodifiableList(strings);
 
        System.out.print(unmodifiableList.size());
        System.out.print(", ");
        strings.remove("aaa");
 
        System.out.print(unmodifiableList.size());
    }
}

上のコードを実行した時の結果はどれになるでしょうか?

続きを読む