I don't understand what is wrong with my solution. Result is ok in my opinion...
package pl.codegym.task.task15.task1527;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Arrays;
/*
Parser żądań
*/
public class Solution {
public static void main(String[] args) throws IOException {
//tutaj wpisz swój kod
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String adres = br.readLine();
String[] podzial = adres.split("\\?");
String part1 = podzial[0];
String part2 = podzial[1];
String[] podzial2 = podzial[1].split("&");
ArrayList<String[]> reszta = new ArrayList<>();
ArrayList<String> parametry = new ArrayList<>();
ArrayList<Double> wartosci = new ArrayList<>();
//Dodaje tablice Stringów do ArrayList "reszta"
for (String daneArray : podzial2)
{
reszta.add(daneArray.split("="));
}
/*
//Odczyt ArrayList "reszta"
for (String[] tablice : reszta)
{
System.out.println(Arrays.toString(tablice));
}
*/
for (String[] tablice : reszta)
{
parametry.add(tablice[0]);
for (int i = 0; i < tablice.length; i++)
{
if (tablice[i].equals("obj"))
{
if (isDouble(tablice[i+1]))
{
double liczba = Double.parseDouble(tablice[1]);
wartosci.add(liczba);
}
else
{
String slowo = tablice[1];
alert(slowo);
}
}
}
}
for (String tablice : parametry)
{
System.out.print(tablice + " ");
}
System.out.println();
for (Double tablice : wartosci)
{
alert(tablice);
}
}
public static void alert(double value) {
System.out.println("double: " + value);
}
public static void alert(String value) {
System.out.println("String: " + value);
}
public static boolean isDouble(String s){
try{
Double.parseDouble(s);
} catch(NumberFormatException e) {
return false;
} catch(NullPointerException e) {
return false;
}
return true;
}
}