Language

Arrays.DeepHashCode(Object[]) メソッド

定義

指定した配列の "ディープ コンテンツ" に基づいてハッシュ コードを返します。

[Android.Runtime.Register("deepHashCode", "([Ljava/lang/Object;)I", "")]
public static int DeepHashCode(Java.Lang.Object[]? a);
[<Android.Runtime.Register("deepHashCode", "([Ljava/lang/Object;)I", "")>]
static member DeepHashCode : Java.Lang.Object[] -> int

パラメーター

a
Object[]

ディープ コンテンツ ベースのハッシュ コードを計算する配列

返品

のディープ コンテンツ ベースのハッシュ コード a

属性

注釈

指定した配列の "ディープ コンテンツ" に基づいてハッシュ コードを返します。 配列に要素として他の配列が含まれている場合、ハッシュ コードはコンテンツなどに基づいて、広告の無限大になります。 したがって、1 つ以上のレベルの配列を介して直接または間接的に、自身を要素として含む配列でこのメソッドを呼び出すのは許容できません。 このような呼び出しの動作は未定義です。

Arrays.deepEquals(a, b)のような 2 つの配列ab場合は、Arrays.deepHashCode(a) == Arrays.deepHashCode(b)する場合もあります。

このメソッドによって返される値の計算は、同じ順序でaと同じ要素を含むリストのList#hashCode()によって返される値と似ています。1 つの違いがあります。aの要素e自体が配列である場合、そのハッシュ コードはe.hashCode()を呼び出すのではなく、プリミティブ型の配列である場合にArrays.hashCode(e)の適切なオーバーロード eを呼び出すことによって計算されます。 eが参照型の配列である場合は、Arrays.deepHashCode(e)を再帰的に呼び出す場合と同様です。 aがnullの場合、このメソッドは 0 を返します。

1\.5 で追加されました。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象