интересная ситуация, если убрать проверку на дробное число в 49 строке, то 4 условие выполнится, но тогда будет выводить целые числа (по типу 15.0)
package com.javarush.task.task15.task1527;
import java.io.*;
import java.nio.Buffer;
import java.util.ArrayList;
/*
Парсер реквестов
*/
public class Solution {
public static void main(String[] args) throws IOException {
//**********Keyboard*************************
InputStream is = System.in;
Reader isr = new InputStreamReader(is);
BufferedReader bf = new BufferedReader(isr);
//*******************************************
ArrayList<String> list = new ArrayList<String>();// UNSORTED DOUBLES OBJECTS
String url = bf.readLine();
String words = url.substring(url.indexOf("?") + 1);
String[] array = words.split("&"); // WORDS
String s;
String result = "";
String tmp = "";
//objects need check on double
for(int i =0; i< array.length;i++){
if(array[i].contains("=")){
s=array[i].substring(array[i].lastIndexOf("=") + 1);
array[i]= array[i].split("=")[0];
list.add(s);
}
}
for (int i = 0 ;i < array.length; i++){
//чтобы в последнем слове не было пробела
if(array.length - i == 1){
result = tmp + array[i];
}else{
result = tmp + array[i] + " ";
}
tmp = result;
}
alert(result);
double numResult = 0;
try{
for(String objects : list){
numResult = Double.parseDouble(objects);
//проверка на дробное число
if(numResult % 1 !=0){
alert(numResult);
}
}
}catch (NumberFormatException e){
}finally {
is.close();
}
}
public static void alert(double value) {
System.out.println("double: " + value);
}
public static void alert(String value) {
System.out.println("String: " + value);
}
}
