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());
}
package com.javarush.task.task15.task1527;
/*
Парсер реквестов
*/
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String url = reader.readLine();
String [] doubleStr = url.split("\\?");
String [] doubleStr2;
String [] doubleStr3;
ArrayList<String > list = new ArrayList<>();
// for(String s: doubleStr){
// System.out.println(s);
// }
for(String s: doubleStr) {
doubleStr2 = s.split("&");
// for(int i=0; i < doubleStr2.length; i++){
// System.out.print(doubleStr2[i] + " ");
// }
for(String s1: doubleStr2) {
doubleStr3 = s1.split("=");
// for (String s2 : doubleStr3) {System.out.println(s2); }
for(String str: doubleStr3) {
list.add(str);
}
}
}
list.remove(0);
// for(String s: list) { System.out.println(s);}
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();
for(Map.Entry<String, String> pair: map.entrySet()) {
if("obj".equals(pair.getKey())) {
try {
double d = Double.parseDouble(pair.getValue());
alert(d);
} catch (NumberFormatException ex) {
alert(pair.getValue());
}
}
}
}
public static void alert(double value) {
System.out.println("double: " + value);
}
public static void alert(String value) {
System.out.println("String: " + value);
}
}