Даже реальный пример замутил для проверки... Работает правильно но проверку не проходит
package com.javarush.task.task22.task2208;
import java.util.LinkedHashMap;
import java.util.Map;
/*
Формируем WHERE
Пример:
{name=Ivanov, country=Ukraine, city=Ki' and ev, age=null}
Результат:
name = 'Ivanov' and country = 'Ukraine' and city = 'Kiev'
*/
public class Solution {
public static void main(String[] args) {
Map<String, String> param = new LinkedHashMap<>();
param.put("name", "Ivanov");
param.put("country", null);
param.put("city", "grisa");
param.put("age", "iura");
getQuery(param);
}
public static void getQuery(Map <String, String> params) {
StringBuilder a = new StringBuilder();
for (Map.Entry <String, String> pair : params.entrySet()) {
if (pair.getValue() != null) {
a.append(" and " + pair.getKey() + " = '" + pair.getValue() + "'");
}
}
a.delete(0, 4);
String s = a.toString();
System.out.println(s);
}
}

package com.javarush.task.task22.task2208;
import java.util.LinkedHashMap;
import java.util.Map;
/*
Формируем WHERE
Пример:
{name=Ivanov, country=Ukraine, city=Ki' and ev, age=null}
Результат:
name = 'Ivanov' and country = 'Ukraine' and city = 'Kiev'
*/
public class Solution {
public static void main(String[] args) {
}
public static String getQuery(Map <String, String> params) {
StringBuilder a = new StringBuilder();
for (Map.Entry <String, String> pair : params.entrySet()) {
if (pair.getValue() != null) {
a.append(" and " + pair.getKey() + " = '" + pair.getValue() + "'");
}
}
a.delete(0, 4);
String s = a.toString();
return s;
}
}