v0.0.3
Some checks failed
CI/CD / build-deploy (pull_request) Failing after 11s

This commit is contained in:
Timi
2026-02-10 15:22:04 +08:00
parent 7b46d2c0c4
commit 6ddd9928fc
3 changed files with 59 additions and 2 deletions

View File

@ -35,6 +35,36 @@ public class ArgMap<K, V> extends HashMap<K, V> {
}
public String toURL(String url) {
return url + "?" + toURL();
StringBuilder sb = new StringBuilder(url);
if (url.contains("?")) {
if (!url.endsWith("?") && !url.endsWith("&")) {
sb.append('&');
}
sb.append(toURL());
return sb.toString();
} else {
return url + "?" + toURL();
}
}
public static <K, V> ArgMap<K, V> of(K key, V value) {
ArgMap<K, V> map = new ArgMap<>();
map.put(key, value);
return map;
}
public static <K, V> ArgMap<K, V> of(K key1, V value1, K key2, V value2) {
ArgMap<K, V> map = new ArgMap<>();
map.put(key1, value1);
map.put(key2, value2);
return map;
}
public static <K, V> ArgMap<K, V> of(K key1, V value1, K key2, V value2, K key3, V value3) {
ArgMap<K, V> map = new ArgMap<>();
map.put(key1, value1);
map.put(key2, value2);
map.put(key3, value3);
return map;
}
}

View File

@ -0,0 +1,27 @@
package com.imyeyu.network.test;
import com.imyeyu.network.ArgMap;
import org.junit.Test;
/**
*
*
* @author 夜雨
* @since 2026-02-10 12:45
*/
public class ArgMapTest {
@Test
public void toURLTest() {
assert ArgMap.of("key", "value").toURL("/detail").equals("/detail?key=value");
assert ArgMap.of("key", "value").toURL("/detail?").equals("/detail?key=value");
assert ArgMap.of("key", "value").toURL("/detail?id=123").equals("/detail?id=123&key=value");
assert ArgMap.of("key", "value").toURL("/detail?id=123&").equals("/detail?id=123&key=value");
assert ArgMap.of("key", "value").toURL("http://localhost/detail").equals("http://localhost/detail?key=value");
assert ArgMap.of("key", "value").toURL("http://localhost/detail?").equals("http://localhost/detail?key=value");
String uri = ArgMap.of("key", "value").toURL("/detail?id=123");
String url = ArgMap.of("newKey", "newValue").toURL("http://localhost/test" + uri);
assert url.equals("http://localhost/test/detail?id=123&key=value&newKey=newValue");
}
}