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());
    }
}

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

続きを読む

Equals Method Overloading - Java Puzzlers Advent Calendar1日目

Equals Method Overloading

import java.util.*;
 
class Student {
    private int id;
 
    Student(int id) {
        this.id = id;
    }
 
    public boolean equals(Student student) {
        return student != null && student.id == id;
    }
 
    @Override
    public int hashCode() {
        return Objects.hash(id);
    }
}
 
public class Main {
    public static void main(String[] args) {
        List<Student> students = new ArrayList<>();
        students.add(new Student(1));
        students.add(new Student(2));
 
        students.remove(new Student(1));
 
        System.out.println(students.size());
  }
}
続きを読む

弱参照とラムダ式

突然ですがクイズです!

以下のコードを実行した時の出力は何になるでしょうか?

cvlspm5vyaa02hs

  1. truetrue
  2. falsefalse
  3. falsetrue
  4. truefalse
続きを読む