BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); ArrayList<String > list = new ArrayList<>(); String url = reader.readLine(); String [] doubleStr2; String [] doubleStr3; // Разделяем строку на две разделителем "?" и заносим в массив doubleStr: String [] doubleStr = url.split("\\?"); // разделяем строки в массиве разделителем "&" и заносим в массив doubleStr2: for(String s: doubleStr) { doubleStr2 = s.split("&"); // Разделяем строки в массиве разделителем "=" и заносим в третий массив doubleStr3: for(String s1: doubleStr2) { doubleStr3 = s1.split("="); // Пробегаемся по массиву и переносим строки в list: for(String str: doubleStr3) { list.add(str); } } } // Удадяем значение с индексом 0: list.remove(0); // Переносим из list значения в map. Параметры в key, значения в value: Map<String,String > map = new HashMap<>(); for(int i=0; i < list.size(); i=i+2) { map.put(list.get(i), list.get(i+1)); } // Выводим на экран список ключей: for(Map.Entry<String, String> s: map.entrySet()) { String key = s.getKey(); System.out.print(key +" "); } System.out.println(); // Делаем проверку на наличие параметра "obj" for(Map.Entry<String, String> pair: map.entrySet()) { if("obj".equals(pair.getKey())) { try { // Если значение конвертируется в тип double, отправляем его в метод alert() типа Double: double d = Double.parseDouble(pair.getValue()); alert(d); //Если ошибка, значит отправляем value в метод alert() типа String: } catch (NumberFormatException ex) { alert(pair.getValue()); }