У меня есть класс ClassName. Например, я обращаюсь к нему ClassName.a().b(1); Как я могу преобразовать a().b(1) в {"a": "null", "b" : "1"} ?
Вы хотите сделать заполнение данных вашего класса через вызов цепочки методов?
Накидал простенький пример:
class Foo {
private Map<String, Object> data = new HashMap<>();
String build() {
StringBuilder builder = new StringBuilder();
builder.append("{");
Iterator<Map.Entry<String, Object>> it = data.entrySet().iterator();
while (it.hasNext()) {
Map.Entry entry = it.next();
builder.append(String.format(
"\"%s\": \"%s\"", entry.getKey(), entry.getValue()
));
if (it.hasNext()) {
builder.append(", ");
}
}
builder.append("}");
return builder.toString();
}
Foo a(Object value) {
data.put("a", value);
return this;
}
Foo a() {
return a(null);
}
Foo b(Object value) {
data.put("b", value);
return this;
}
Foo c(Object value) {
data.put("c", value);
return this;
}
}
Тестируем:
public static void main(String[] args) {
System.out.println("text: " + new Foo().a(null).b(1).c("123").build());
// text: {"a": "null", "b": "1", "c": "123"}
System.out.println("text: " + new Foo().build());
// text: {}
System.out.println("text: " + new Foo().a().build());
// text: {"a": "null"}
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Встал на Вводе/Выводе поток байтНужно написать метод, который принимает InputStream и OutputStream, считывает все байты из inputStream и записывает в OutputStream...
Есть 2 приложения: Первое приложение представляет собой REST API, работа с которым осуществляется через второе приложение с помощью RestTemplate (получение...
Имеется задание, в котором нужно проверить каждый массив на упорядоченность строго на убываниеЕсли он упорядочен - true