前回に続いてMapクラスに追加されたメソッドに調べてみました。【computeメソッド】Map#computeメソッドはMap内の値を加工するためのメソッドです。}Map#computeメソッドのパラメータはキーと加工用の関数オブジェクトです。キーはMapのキーの型を指定します。値と同じ型のオブジェクトを返却します。4-null1=one2=2-two3=three4=4-nullパラメータで渡した関数オブジェクトによって加工された値はパラメータで指定したキーに紐付くエントリの値に反映されます。加工後の値はMap#computeメソッドの戻り値として返却されます。関数オブジェクトには指定したキー値とNullが渡されます。【computeIfAbsentメソッド】Map#comuteIfAbsentメソッドは値が設定されていない場合にのみ加工するためのメソッドです。}Map#computeメソッドと同じく、パラメータはキーと関数オブジェクトです。関数オブジェクトのパラメータはMap#computeメソッドと違いキーのみです。two1=one2=two3=three4=4-4パラメータで指定したキーがない場合のみ加工した結果が設定されます。指定したキーがない場合はキーに紐付く値が返却されます。【computeIfPresent】Map#computeIfPresentメソッドは値が設定されている場合にのみ加工するためのメソッドです。}パラメータはMap#computeメソッドと同じです。null1=1-one2=two3=threeパラメータで指定したキーがある場合のみ加工した結果が設定されます。指定したキーがない場合はNullが返却されます。【merge】Map#mergeメソッドはもcompute系のメソッド同じくMap内の値を加工するためのメソッドです。}Map#mergeメソッドのパラメータはキー、値、関数オブジェクトの3つです。関数オブジェクトのパラメータは2つです。Mapオブジェクト内のキーに紐付く値とMap#mergeメソッドにパラメータとして渡した値です。four1=one2=two-ni3=three4=four指定したキーがある場合は、Map#mergeメソッドにパラメータとして渡した値と関数オブジェクト元に加工されます。加工された値はMap内の値に反映され、Map#mergeメソッドの戻り値として返却されます。指定したキーがない場合はMap#mergeメソッドにパラメータとして渡した値が設定されてMapオブジェクトに追加されます。今回は下記のメソッドを調べました。computecomputeIfAbsentcomputeIfPresentmergeMap内のオブジェクトを加工するメソッドです。処理してくれるメソッドが増えているなと言うのが個人的な印象です。使う機会は少ないんじゃないかなと言うのも感じます。月別アーカイブはてなブログをはじめよう!gloryofさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。