Стамбульский Üsküdar (Scutari), первая часть

Если по-старинке пересечь пролив Босфор на одном из пассажирских суденышек или в ногу со временем прокатиться под проливом на современном метро, то окажемся из Европы в Азии. Точнее, в азиатской части Стамбула (точнее, в одном из районов, называемом Üsküdar), просто она находится в другой части света, Азии. Кто забыл, Азия — самая большая часть света, образует вместе с Европой материк Евразию. В общем, про это все написано переписано множество текстов. Так что я просто в 2-3 частях покажу, что мы там увидели. Заехали туда буквально на 1 из 3 дней в Стамбуле.

GPS: 41.027571, 29.015388

Читать далее Стамбульский Üsküdar (Scutari), первая часть

NullPointerException и null в Java 8

Есть объекты:

class Outer {
Nested nested;
Nested getNested() {
return nested;
}
}
class Nested {
Inner inner;
Inner getInner() {
return inner;
}
}
class Inner {
String foo;
String getFoo() {
return foo;
}
}

Есть примитивная проверка:

Outer outer = new Outer();
if (outer != null && outer.nested != null && outer.nested.inner != null) {
System.out.println(outer.nested.inner.foo);
}

Есть новые возможности Java 8:

Optional.of(new Outer())
.map(Outer::getNested)
.map(Nested::getInner)
.map(Inner::getFoo)
.ifPresent(System.out::println);

или (эксепшен будет заменен Optional.empty())

Outer obj = new Outer();
resolve(() -> obj.getNested().getInner().getFoo());
.ifPresent(System.out::println);