Map
<String
, List
<String
>>を実装するこのクラスによって表されます。 キーはヘッダー名を表す文字列であり、大文字と小文字は区別されません。各キーに関連付けられた値は、要求または応答内に出現する各ヘッダー名に対して1つの要素を持つList
<String
>です。
たとえば、応答ヘッダーのインスタンスに「value1」と「value2」という2つの値を持つ1つのキー「HeaderName」が含まれている場合、このオブジェクトは2つのヘッダー行として出力されます。
通常のHeaderName: value1 HeaderName: value2
Map
メソッドがすべて提供されますが、次の追加の簡易メソッドがよく使用される可能性があります。
getFirst(String)
。単一値ヘッダーまたは複数値ヘッダーの最初の値を返します。add(String,String)
。指定されたキーのリストに、指定されたヘッダー値を追加します。set(String,String)
。指定されたヘッダー・フィールドに単一値を設定して、値リストの既存の値をすべて上書きします。
Headers
のインスタンスは、「変える」または「不変」です。 「可変ヘッダー」では、HttpExchange.getResponseHeaders()
によって返されるインスタンスなど、ヘッダーの名前と値を追加、削除または変更できます。 「不変ヘッダー」では、HttpExchange.getRequestHeaders()
によって返されるインスタンスなど、ヘッダー名または値に対する変更は許可されません。 不変ヘッダー・インスタンスのミューテータ・メソッドは、無条件にUnsupportedOperationException
をスローします。
このクラスのすべてのメソッドは、キーおよび値のnull
値を拒否します。null
キーは、HTTPリクエストまたはレスポンス・ヘッダーには存在しません。
- 導入されたバージョン:
- 1.6
-
ネストされたクラスのサマリー
-
コンストラクタのサマリー
コンストラクタ -
メソッドのサマリー
修飾子と型メソッド説明void
指定されたvalue
を、指定されたkey
のヘッダーのリストに追加します。void
clear()
マップからマッピングをすべて削除します(オプションの操作)。boolean
containsKey
(Object key) 指定されたキーのマッピングがこのマップに含まれている場合にtrue
を返します。boolean
containsValue
(Object value) このマップが1つまたは複数のキーと指定された値をマッピングしている場合にtrue
を返します。entrySet()
このマップに含まれるマッピングのSet
ビューを返します。boolean
指定されたオブジェクトがこのマップと等しいかどうかを比較します。指定されたキーがマップされている値を返します。そのキーのマッピングがこのマップに含まれていない場合はnull
を返します。指定されたkey
のString
値のList
から最初の値を返します。key
のマッピングが存在しない場合はnull
を返します。int
hashCode()
マップのハッシュ・コード値を返します。boolean
isEmpty()
このマップがキーと値のマッピングを保持しない場合にtrue
を返します。keySet()
このマップに含まれるキーのSet
ビューを返します。static Headers
指定された名前値のペアをヘッダーのセットとして、不変Headers
を返します。static Headers
ヘッダー名と値が同じ指定されているheaders
から不変Headers
を返します。指定された値と指定されたキーをこのマップで関連付けます(オプションの操作)。void
指定されたマップのすべてのマッピングをこのマップにコピーします(オプションの操作)。このマップからキーのマッピング(ある場合)を削除します(オプションの操作)。void
指定されたvalue
を、指定されたkey
の唯一のヘッダー値として設定します。int
size()
このマップ内のキー値マッピングの数を返します。values()
このマップに含まれる値のCollection
ビューを返します。クラスjava.lang.Objectで宣言されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
インタフェースjava.util.Mapで宣言されたメソッド
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
-
コンストラクタの詳細
-
Headers
public Headers()Headers
の空のインスタンスを作成します。 -
Headers
指定されたheaders
から、同じヘッダー名および値を使用して、可変Headers
を作成します。- パラメータ:
headers
- ヘッダー名と値のマップ- 例外:
NullPointerException
-headers
またはそのいずれかの名前または値がnullの場合、またはいずれかの値にnullが含まれる場合。- 導入されたバージョン:
- 18
-
-
メソッドの詳細
-
size
-
isEmpty
-
containsKey
public boolean containsKey(Object key) インタフェースからコピーされた説明:Map
指定されたキーのマッピングがこのマップに含まれている場合にtrue
を返します。 より正式には、このマップにObjects.equals(key, k)
などのキーk
のマッピングが含まれている場合のみ、true
を返します。 (このようなマッピングは1つのみ存在できます。)- 定義:
- インタフェース
Map<String,
内のList<String>> containsKey
- パラメータ:
key
- このマップ内にあるかどうかが判定されるキー- 戻り値:
- 指定されたキーのマッピングがこのマップに含まれている場合は
true
-
containsValue
public boolean containsValue(Object value) インタフェースからコピーされた説明:Map
このマップが1つまたは複数のキーと指定された値をマッピングしている場合にtrue
を返します。 より正式には、このマップに値v
へのマッピングがObjects.equals(value, v)
のように少なくとも1つ含まれている場合にのみ、true
を返します。 この操作では、Map
インタフェースのほとんどの実装で、マップ・サイズに時間線形が必要になる場合があります。- 定義:
- インタフェース
Map<String,
内のList<String>> containsValue
- パラメータ:
value
- このマップにあるかどうかが判定される値- 戻り値:
- このマップが1つまたは複数のキーを指定された値にマッピングしている場合は
true
-
get
インタフェースからコピーされた説明:Map
指定されたキーがマップされている値を返します。そのキーのマッピングがこのマップに含まれていない場合はnull
を返します。より正式には、このマップにキー
k
から値v
へのマッピング(Objects.equals(key, k)
など)が含まれる場合、このメソッドはv
を返します。それ以外の場合はnull
を返します。 (このようなマッピングは1つのみ存在できます。)このマップがnull値を許可する場合、戻り値の
null
は、マップがキーのマッピングを保持していないことを示すとはかぎりません。つまり、マップが明示的にキーをnull
にマップすることもあります。containsKey
操作を使うと、これら2つのケースを見分けることができます。 -
getFirst
-
put
インタフェースからコピーされた説明:Map
指定された値と指定されたキーをこのマップで関連付けます(オプションの操作)。 マップにすでにこのキーに対するマッピングがある場合、古い値は指定された値に置き換えられます。 (マップm
には、m.containsKey(k)
がtrue
を返す場合にのみ、キーk
のマッピングが含まれていると記述されます。) -
add
-
set
-
remove
インタフェースからコピーされた説明:Map
このマップからキーのマッピング(ある場合)を削除します(オプションの操作)。 より正式には、このマップにキーk
から値v
へのマッピングが含まれている場合(Objects.equals(key, k)
など)、そのマッピングは削除されます。 マップはこのようなマッピングを1つだけ含めることができます。このマップが以前にキーを関連付けた値を返します。マップにキーのマッピングが含まれていない場合は
null
を返します。このマップでNULL値が許可されている場合、
null
の戻り値は「必ずしも」マップにキーのマッピングが含まれていないことを示しません。マップによってキーがnull
に明示的にマップされている可能性もあります。呼出しが戻ると、マップは指定されたキーのマッピングを含まなくなります。
-
putAll
-
clear
-
keySet
インタフェースからコピーされた説明:Map
このマップに含まれるキーのSet
ビューを返します。 セットはマップと連動しているので、マップに対する変更はセットに反映され、また、セットに対する変更はマップに反映されます。 セットの反復処理中にマップが変更された場合、反復処理の結果は定義されていません(イテレータ自身のremove
オペレーションを除く)。 セットは要素の削除をサポートします。Iterator.remove
、Set.remove
、removeAll
、retainAll
、およびclear
オペレーションで対応するマッピングをマップから削除します。add
またはaddAll
操作はサポートされていません。 -
values
public Collection<List<String>> values()インタフェースからコピーされた説明:Map
このマップに含まれる値のCollection
ビューを返します。 コレクションはマップと連動しているので、マップに対する変更はコレクションに反映され、またコレクションに対する変更はマップに反映されます。 コレクションの反復処理中にマップが変更された場合、反復処理の結果は定義されません(イテレータ自身のremove
オペレーションを除く)。 コレクションは要素の削除をサポートしており、対応するマッピングをマップから削除できます。削除は、Iterator.remove
、Collection.remove
、removeAll
、retainAll
、およびclear
オペレーションを通して行います。add
またはaddAll
操作はサポートされていません。 -
entrySet
インタフェースからコピーされた説明:Map
このマップに含まれるマッピングのSet
ビューを返します。 セットはマップと連動しているので、マップに対する変更はセットに反映され、また、セットに対する変更はマップに反映されます。 セットの反復処理中にマップが変更された場合、反復処理の結果は定義されません(イテレータ自身のremove
オペレーション、またはイテレータにより返されるマップ・エントリに対するsetValue
オペレーションを除く)。 セットは要素の削除をサポートしており、対応するマッピングをマップから削除できます。削除は、Iterator.remove
、Set.remove
、removeAll
、retainAll
、およびclear
オペレーションを通して行います。add
またはaddAll
操作はサポートされていません。 -
equals
-
hashCode
public int hashCode()インタフェースからコピーされた説明:Map
マップのハッシュ・コード値を返します。 マップのハッシュ・コードは、マップのentrySet()
ビューの各エントリのハッシュ・コードの合計として定義されます。 これにより、Object.hashCode()
の一般的な契約で必要となる、m1
およびm2
の2つのマップに対してm1.equals(m2)
がm1.hashCode()==m2.hashCode()
であることを意味します。 -
of
指定された名前値のペアをヘッダーのセットとして、不変Headers
を返します。提供された
String
インスタンスは、ヘッダー名とヘッダー値として代替する必要があります。 同じ名前に複数の値を追加するには、新しい値ごとに同じ名前を指定する必要があります。 指定されたheaders
が空の場合は、空のHeaders
が返されます。- パラメータ:
headers
- 名前値のペアのリスト- 戻り値:
- 指定された名前と値のペアを持つ不変ヘッダー
- 例外:
NullPointerException
-headers
またはそのいずれかの要素がnullの場合。IllegalArgumentException
- 指定された文字列の数が奇数の場合。- 導入されたバージョン:
- 18
-
of
-