Проверял на тестах из условия и на своих - вывод корректный, в чем пробелма?
package com.javarush.task.task15.task1527;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/*
Парсер реквестов
*/
public class Solution {
public static void main(String[] args) throws Exception {
//add your code here
BufferedReader br = new BufferedReader(new InputStreamReader (System.in));
String s = br.readLine();
String o = "";
double d = 0.0;
String d_str = "";
String[] words = s.split("&");
if(s.contains("obj")){
for(String a : words) {
if(a.contains("obj")){
o = "obj";
try {
d = Double.valueOf(a.substring(a.indexOf("=")+1, a.length()));
}catch(Exception e) {
d_str = a.substring(a.indexOf("=")+1, a.length());
}
}
else
if(a.contains("="))
o = o + " " + a.substring(0, a.indexOf("="));
else
o = o + " " + a;
}
alert(o);
if(d_str.length() > 0)
alert(d_str);
else
alert(d);
}
else
{
words[0] = words[0].substring(words[0].indexOf("?")+1, words[0].length());
for(String a : words){
if(a.contains("="))
o = o + " " + a.substring(0, a.indexOf("="));
else
o = o + " " + a;
}
alert(o.substring(1, o.length()));
}
}
public static void alert(double value) {
System.out.println("double: " + value);
}
public static void alert(String value) {
System.out.println("String: " + value);
}
}