BAEL-6811 move string article to make space for a new one using the same library; delete extra file
This commit is contained in:
parent
8bdab701bf
commit
a6ec9122ea
@ -11,3 +11,4 @@ This module contains articles about string-related algorithms.
|
|||||||
- [Find the First Non Repeating Character in a String in Java](https://www.baeldung.com/java-find-the-first-non-repeating-character)
|
- [Find the First Non Repeating Character in a String in Java](https://www.baeldung.com/java-find-the-first-non-repeating-character)
|
||||||
- [Find the First Embedded Occurrence of an Integer in a Java String](https://www.baeldung.com/java-string-find-embedded-integer)
|
- [Find the First Embedded Occurrence of an Integer in a Java String](https://www.baeldung.com/java-string-find-embedded-integer)
|
||||||
- [Find the Most Frequent Characters in a String](https://www.baeldung.com/java-string-find-most-frequent-characters)
|
- [Find the Most Frequent Characters in a String](https://www.baeldung.com/java-string-find-most-frequent-characters)
|
||||||
|
- [Checking If a String Is a Repeated Substring](https://www.baeldung.com/java-repeated-substring)
|
@ -11,6 +11,5 @@ This module contains articles about string-related algorithms.
|
|||||||
- [How to Reverse a String in Java](https://www.baeldung.com/java-reverse-string)
|
- [How to Reverse a String in Java](https://www.baeldung.com/java-reverse-string)
|
||||||
- [Check if a String Is a Pangram in Java](https://www.baeldung.com/java-string-pangram)
|
- [Check if a String Is a Pangram in Java](https://www.baeldung.com/java-string-pangram)
|
||||||
- [Check If a String Contains Multiple Keywords in Java](https://www.baeldung.com/string-contains-multiple-words)
|
- [Check If a String Contains Multiple Keywords in Java](https://www.baeldung.com/string-contains-multiple-words)
|
||||||
- [Checking If a String Is a Repeated Substring](https://www.baeldung.com/java-repeated-substring)
|
|
||||||
- [Remove Emojis from a Java String](https://www.baeldung.com/java-string-remove-emojis)
|
- [Remove Emojis from a Java String](https://www.baeldung.com/java-string-remove-emojis)
|
||||||
- More articles: [[next -->]](../core-java-string-algorithms-2)
|
- More articles: [[next -->]](../core-java-string-algorithms-2)
|
||||||
|
@ -1,79 +0,0 @@
|
|||||||
import org.junit.jupiter.api.Test;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import static org.junit.jupiter.api.Assertions.*;
|
|
||||||
|
|
||||||
public class MultiValueHashMapTest {
|
|
||||||
@Test
|
|
||||||
public void given_MultiValueHashMap_whenPuttingAndGettingSingleValue_thenValueIsRetrieved() {
|
|
||||||
MultiValueHashMap<String, Integer> map = new MultiValueHashMap<>();
|
|
||||||
map.put("key1", 10);
|
|
||||||
assertEquals(List.of(10), map.get("key1"));
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void given_MultiValueHashMap_whenPuttingAndGettingMultipleValues_thenAllValuesAreRetrieved() {
|
|
||||||
MultiValueHashMap<String, String> map = new MultiValueHashMap<>();
|
|
||||||
map.put("key2", "value1");
|
|
||||||
map.put("key2", "value2");
|
|
||||||
map.put("key2", "value3");
|
|
||||||
|
|
||||||
assertEquals(List.of("value1", "value2", "value3"), map.get("key2"));
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void given_MultiValueHashMap_whenGettingNonExistentKey_thenEmptyListIsReturned() {
|
|
||||||
MultiValueHashMap<String, Double> map = new MultiValueHashMap<>();
|
|
||||||
assertTrue(map.get("nonexistent").isEmpty());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void given_MultiValueHashMap_whenRemovingValue_thenValueIsSuccessfullyRemoved() {
|
|
||||||
MultiValueHashMap<Integer, String> map = new MultiValueHashMap<>();
|
|
||||||
map.put(1, "one");
|
|
||||||
map.put(1, "uno");
|
|
||||||
map.put(1, "eins");
|
|
||||||
|
|
||||||
map.remove(1, "uno");
|
|
||||||
assertEquals(List.of("one", "eins"), map.get(1));
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testRemoveNonExistentValue() {
|
|
||||||
MultiValueHashMap<Integer, String> map = new MultiValueHashMap<>();
|
|
||||||
map.put(1, "one");
|
|
||||||
map.remove(1, "nonexistent");
|
|
||||||
assertEquals(List.of("one"), map.get(1));
|
|
||||||
}
|
|
||||||
|
|
||||||
public class MultiValueHashMap<K, V> {
|
|
||||||
private HashMap<K, ArrayList<V>> map;
|
|
||||||
|
|
||||||
// Constructor
|
|
||||||
public MultiValueHashMap() {
|
|
||||||
map = new HashMap<>();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void put(K key, V value) {
|
|
||||||
if (!map.containsKey(key)) {
|
|
||||||
map.put(key, new ArrayList<>());
|
|
||||||
}
|
|
||||||
map.get(key).add(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
public List<V> get(K key) {
|
|
||||||
return map.getOrDefault(key, new ArrayList<>());
|
|
||||||
}
|
|
||||||
|
|
||||||
public void remove(K key, V value) {
|
|
||||||
if (map.containsKey(key)) {
|
|
||||||
map.get(key).remove(value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
x
Reference in New Issue
Block a user