не могу понять в чём проблема, всё находит и пишет как надо, но валидатор не пропускает
package com.javarush.task.task15.task1527;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
/*
Парсер реквестов
*/
public class Solution {
public static void main(String[] args) {
double value;
char[] chars = new char[100];
String parameter, valueOfParameter = null;
StringBuilder stringBuilder = new StringBuilder();
ArrayList<String> parameters = new ArrayList<>();
boolean isAddParameter = false, isObj = false;
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
try {
String url = reader.readLine();
chars = url.toCharArray();
} catch (IOException e) {
e.printStackTrace();
}
for (int i = 1; i < chars.length; i++) {
if (chars[i-1] == '?' || chars[i-1] == '&')
isAddParameter = true;
else if (chars[i] == '=' || chars[i] == '&')
isAddParameter = false;
if (isAddParameter == true)
stringBuilder.append(chars[i]);
else if (isAddParameter == false && stringBuilder.length() > 1 && !parameters.contains(stringBuilder.toString())) {
//System.out.println(stringBuilder);
parameter = stringBuilder.toString();
stringBuilder.delete(0, stringBuilder.length());
//System.out.println(parameter);
parameters.add(parameter);
if (parameter.equals("obj")){
for (int j = i+1; j < chars.length; j++) {
if (chars[j] != '&') {
stringBuilder.append(chars[j]);
}
else if (chars[j] == '&')
break;
}
valueOfParameter = stringBuilder.toString();
isObj = true;
if (valueOfParameter.contains(".")) {
value = Double.parseDouble(valueOfParameter);
}
stringBuilder.delete(0, stringBuilder.length());
}
parameter = null;
}
}
for (int i = 0; i < parameters.size()-1; i++) {
System.out.print(parameters.get(i) + " ");
}
System.out.print(parameters.get(parameters.size()-1));
System.out.println();
try {
value = Double.parseDouble(valueOfParameter);
alert(value);
}
catch (Exception e) {
alert(valueOfParameter);
}
}
public static void alert(double value) {
System.out.println("double: " + value);
}
public static void alert(String value) {
System.out.println("String: " + value);
}
}