Вывод вроде получается, какой нужно, но валидатор говорит, что методы alert не вызываются и вообще вывод не такой. Помогите, пожалуйста!
package com.javarush.task.task15.task1527;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;
import java.util.ArrayList;
/*
Парсер реквестов
*/
public class Solution
{
public static void main(String[] args) throws Exception
{
ArrayList<String> obj = new ArrayList<>();
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String s = reader.readLine();
URL aURL = new URL(s);
String[] parts;
String delimeter = "&";
parts = aURL.getQuery().split(delimeter); // Делим строку на массив с разделителем &
for (int i = 0; i < parts.length; i++)
{
if (parts[i].contains("obj"))
{
String add = parts[i];
obj.add(add); //Копируем строки с obj в отдельный список, вдруг их больше 1го
}
if (parts[i].contains("="))
{
parts[i] = parts[i].substring(0, parts[i].indexOf("="));
// отбрасываем в строках часть от "="" и до конца
}
}
for (int i = 0; i < parts.length; i++)
{
System.out.print(parts[i] + " ");
}
System.out.println("");
for (int i = 0; i < obj.size(); i++)
{
String line = obj.get(i).substring(obj.get(i).indexOf("=") + 1, obj.get(i).length());
//вырезаем из строки нужную часть
try
{
if (line.contains("."))
{
double a = Double.parseDouble(line);
alert(a);
}
} catch (Exception e)
{
alert(line);
}
}
}
public static void alert(double value)
{
System.out.println("double " + value);
}
public static void alert(String value)
{
System.out.println("String " + value);
}
}