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のヘッダーのリストに追加します。voidclear()マップからマッピングをすべて削除します(オプションの操作)。booleancontainsKey(Object key) 指定されたキーのマッピングがこのマップに含まれている場合にtrueを返します。booleancontainsValue(Object value) このマップが1つまたは複数のキーと指定された値をマッピングしている場合にtrueを返します。entrySet()このマップに含まれるマッピングのSetビューを返します。booleanこのオブジェクトと他のオブジェクトが等しいかどうかを示します。指定されたキーがマップされている値を返します。そのキーのマッピングがこのマップに含まれていない場合はnullを返します。指定されたkeyのString値のListから最初の値を返します。keyのマッピングが存在しない場合はnullを返します。inthashCode()オブジェクトのハッシュ・コード値を返します。booleanisEmpty()このマップがキーと値のマッピングを保持しない場合にtrueを返します。keySet()このマップに含まれるキーのSetビューを返します。static Headers指定された名前値のペアをヘッダーのセットとして、不変Headersを返します。static Headersヘッダー名と値が同じ指定されているheadersから不変Headersを返します。指定された値と指定されたキーをこのマップで関連付けます(オプションの操作)。void指定されたマップのすべてのマッピングをこのマップにコピーします(オプションの操作)。このマップからキーのマッピング(ある場合)を削除します(オプションの操作)。void指定されたvalueを、指定されたkeyの唯一のヘッダー値として設定します。intsize()このマップ内のキー値マッピングの数を返します。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
public int size()インタフェースからコピーされた説明:Mapこのマップ内のキー値マッピングの数を返します。 -
isEmpty
public boolean isEmpty()インタフェースからコピーされた説明:Mapこのマップがキーと値のマッピングを保持しない場合にtrueを返します。 -
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を返します。 より正式には、このマップがObjects.equals(value, v)のような値vへの少なくとも1つのマッピングを含む場合に限り、trueを返します。- 定義:
- インタフェース
Map<String,内のList<String>> containsValue - パラメータ:
value- このマップにあるかどうかが判定される値- 戻り値:
- このマップが1つまたは複数のキーを指定された値にマッピングしている場合は
true
-
get
インタフェースからコピーされた説明:Map指定されたキーがマップされている値を返します。そのキーのマッピングがこのマップに含まれていない場合はnullを返します。より正式には、このマップにキー
kからObjects.equals(key, k)のような値vへのマッピングが含まれている場合、このメソッドはvを返します; それ以外の場合は、nullを返します。 (このようなマッピングは1つのみ存在できます。)このマップがnull値を許可する場合、戻り値の
nullは、マップがキーのマッピングを保持していないことを示すとはかぎりません。つまり、マップが明示的にキーをnullにマップすることもあります。containsKey操作を使うと、これら2つのケースを見分けることができます。 -
getFirst
指定されたkeyのString値のListから最初の値を返します。keyのマッピングが存在しない場合はnullを返します。- パラメータ:
key- 検索するキー- 戻り値:
- キーに関連付けられた最初の
String値、キーのマッピングが存在しない場合はnull
-
put
インタフェースからコピーされた説明:Map指定された値と指定されたキーをこのマップで関連付けます(オプションの操作)。 マップにすでにこのキーに対するマッピングがある場合、古い値は指定された値に置き換えられます。 -
add
指定されたvalueを、指定されたkeyのヘッダーのリストに追加します。 マッピングがまだ存在しない場合は、作成されます。- パラメータ:
key- ヘッダー名value- ヘッダーに追加する値
-
set
指定されたvalueを、指定されたkeyの唯一のヘッダー値として設定します。 マッピングがまだ存在しない場合は、作成されます。- パラメータ:
key- ヘッダー名value- 設定するヘッダー値
-
remove
インタフェースからコピーされた説明:Mapこのマップからキーのマッピング(ある場合)を削除します(オプションの操作)。 より正式には、このマップに、kからObjects.equals(key, k)のような値vへのマッピングが含まれている場合、そのマッピングは削除されます。 マップはこのようなマッピングを1つだけ含めることができます。呼出しが戻ると、マップは指定されたキーのマッピングを含まなくなります。
-
putAll
インタフェースからコピーされた説明:Map指定されたマップのすべてのマッピングをこのマップにコピーします(オプションの操作)。 オペレーションの進行中に、指定されたマップが変更された場合の、このオペレーションの動作は定義されていません。 -
clear
public void clear()インタフェースからコピーされた説明:Mapマップからマッピングをすべて削除します(オプションの操作)。 この呼出しが戻ると、マップは空になります。 -
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
public boolean equals(Object o) 次のクラスからコピーされた説明:Objectこのオブジェクトと他のオブジェクトが等しいかどうかを示します。equalsメソッドは、null以外のオブジェクト参照での同値関係を実装します。- 反射性(reflexive): null以外の参照値
xについて、x.equals(x)はtrueを返します。 - 対称性(symmetric): null以外の参照値
xおよびyについて、y.equals(x)がtrueを返す場合に限り、x.equals(y)はtrueを返します。 - 推移性(transitive): null以外の参照値
x、y、およびzについて、x.equals(y)がtrueを返し、y.equals(z)がtrueを返す場合、x.equals(z)はtrueを返します。 - 一貫性(consistent): null以外の参照値
xおよびyについて、x.equals(y)の複数の呼出しは、このオブジェクトに対するequalsによる比較で使われた情報が変更されていなければ、一貫してtrueを返すか、一貫してfalseを返します。 - null以外の参照値
xについて、x.equals(null)はfalseを返します。
等価関係は、操作対象の要素を「同等クラス」にパーティション化し、等価クラスのすべてのメンバーは互いに等しくなります。 等価クラスのメンバーは、少なくともなんらかの目的で互いに置換可能です。
- 反射性(reflexive): null以外の参照値
-
hashCode
public int hashCode()次のクラスからコピーされた説明:Objectオブジェクトのハッシュ・コード値を返します。 このメソッドは、HashMapによって提供されるハッシュ表などの、ハッシュ表の利点のためにサポートされています。hashCodeの一般的な規則は次のとおりです。- Javaアプリケーションの実行中に同じオブジェクトに対して複数回呼び出された場合は常に、このオブジェクトに対する
equalsの比較で使用される情報が変更されていなければ、hashCodeメソッドは常に同じ整数を返す必要があります。 ただし、この整数は同じアプリケーションの実行ごとに同じである必要はありません。 - 2つのオブジェクトが
equalsメソッドに従って等しい場合、2つのオブジェクトのそれぞれでhashCodeメソッドを呼び出すと、同じ整数結果が生成される必要があります。 - 2つのオブジェクトが
equalsメソッドに従って等しくない場合、2つのオブジェクトのそれぞれでhashCodeメソッドを呼び出すと、個別の整数結果が生成される必要はありません。 ただし、プログラマは、等しくないオブジェクトに対して異なる整数の結果を生成すると、ハッシュ表のパフォーマンスが向上する可能性があることに注意するようにしてください。
- Javaアプリケーションの実行中に同じオブジェクトに対して複数回呼び出された場合は常に、このオブジェクトに対する
-
of
指定された名前値のペアをヘッダーのセットとして、不変Headersを返します。提供された
Stringインスタンスは、ヘッダー名とヘッダー値として代替する必要があります。 同じ名前に複数の値を追加するには、新しい値ごとに同じ名前を指定する必要があります。 指定されたheadersが空の場合は、空のHeadersが返されます。- パラメータ:
headers- 名前値のペアのリスト- 戻り値:
- 指定された名前と値のペアを持つ不変ヘッダー
- 例外:
NullPointerException-headersまたはそのいずれかの要素がnullの場合。IllegalArgumentException- 指定された文字列の数が奇数の場合。- 導入されたバージョン:
- 18
-
of
ヘッダー名と値が同じ指定されているheadersから不変Headersを返します。- パラメータ:
headers- ヘッダー名と値のマップ- 戻り値:
- 不変ヘッダー
- 例外:
NullPointerException-headersまたはそのいずれかの名前または値がnullの場合、またはいずれかの値にnullが含まれる場合。- 導入されたバージョン:
- 18
-