Я сталкиваюсь с проблемой, которая всегда смущала меня при проверке исходного кода в JDK.Ниже приведен фрагмент кода из ConcurrentHashMap.Почему бы не использовать table varible напрямую?а скорее, чтобы назначить его на t локальную переменную.это рекомендуемый стиль в Java?
public boolean containsValue(Object value) {
if (value == null)
throw new NullPointerException();
Node<K,V>[] t;
if ((**t** = **table**) != null) {
Traverser<K,V> it = new Traverser<K,V>(**t**, **t**.length, 0, t.length);
for (Node<K,V> p; (p = it.advance()) != null; ) {
V v;
if ((v = p.val) == value || (v != null && value.equals(v)))
return true;
}
}
return false;
}