JDK8 集合之List Map新增方法

2021-10-21 07:22:07 字數 3076 閱讀 8679

public

void

testlist()

public

void

testlist2()

);}

在指定的鍵存在,有與之相關的對映值時,才會將指定的鍵對映到指定的值

在指定的鍵不存在時,方法會return回來乙個null,指定的鍵值不會新增到map中

public

void

testmap()

}string replace = null;

if(map.

containskey

("a"))

system.out.

println

(replace)

;

if

(map.

containskey

(key)

&& objects.

equals

(map.

get(key)

, value)

)else

public

void

testmap()

}

將每個條目的值替換為對該條目呼叫給定函式的結果,直接所有條目都被處理或該函式丟擲異常。函式丟擲的異常被**給呼叫者

for

(map.entry

entry : map.

entryset()

)

public

void

testmap()

統計乙個字串中各個字元出現的頻率

public

void

test()

system.out.

println

(map)

;}

put/replace返回的是舊值,compute方法返回的是新值

對指定的key在map中的值進行操作 不管存不存在,操作完成後儲存到map中

public

void

test2()

system.out.

println

(map)

;}

public

void

test()

system.out.

println

(map)

;}

最終返回的還是v的值

public

void

testmap2()

system.out.

println

(map)

;//

}

computeifabsent:存在時返回存在的值,不存在時返回新值

當k存在時,直接返回k對應的value值

當k不存在時,通過function函式計算的值給當前v

public

void

testmap()

}

map

> result =

newhashmap

<

>()

;list

a = result.

computeifabsent

("a"

, k -

>

newarraylist

<

>()

);a.add

("aa");

a = result.

computeifabsent

("a"

, k -

>

newarraylist

<

>()

);a.add

("bb");

map> result =

newhashmap

<

>()

;list

a = result.

compute

("a"

,(k, v)

-> optional.

ofnullable

(v).

orelse

(new

arraylist

<

>()

));a.

add(

"aa");

a = result.

compute

("a"

,(k, v)

-> optional.

ofnullable

(v).

orelse

(new

arraylist

<

>()

));a.

add(

"bb"

);

只對已經存在key的進行操作,其他不操作

public

void

testmap()

}

如果指定的k尚未與值相關聯(或者對映到null),將其與給定值相關聯並返回null,否則直接返回當前值

public

void

testmap()

}

把list中的物件,按照屬性男女分組,然後把年齡彙總

public

void

test()

public

void

test()

);resultmap.

foreach

((k, v)

-> system.out.

println

(k +

" : "

+ v));

}

JDK8漫談 集合更強大

stream像操作sql一樣處理資料,所以很概念非常相近,可以對比著理解 分為靜態建立和例項建立,不同的方法適用於不同場景。目的都是為了轉成流 初始 適用於陣列和簡單的資料轉為stream test public void test static of 範圍 適用於整數迭代 test public ...

jdk8 之方法引用

方法引用 實際上是lamda函式的語法糖 有時候並不適用 我們可以講方法引用看做乙個函式指標.function pointer 方法引用分為4類 類名 靜態方法名 建立乙個類 public class student public void setname string name public in...

Jdk8新特性之排序

comparator提供的方法 author wgr create 2020 4 13 16 12 public class person public string getname public void setname string name public integer getage publ...