Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- object ImmutableMap {
- def merge[A, B](m1: Map[A, B], m2: Map[A, B]): Map[A, B] = {
- var m3: Map[A, B] = m1 //Store new map in m3
- if (m1.isEmpty) {
- m3 = m2 //Return m2 if m1 is empty
- }
- else {
- for (key <- m2.keys) { //Iterate over keys and check values
- if (m1.contains(key)) {
- sys.error(f"Key Duplicate! $key exists in both Maps!")
- } else { //Add to map if key is free
- m3 += (key -> m2(key))
- }
- }
- }
- m3
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement