Валидатор выдает не соотвествие по 2 пункту.
Есть у меня предположение, что это из-за того что я отлавливаю IOExeption, но как это связанно со статическим полем?
ДА причина была в отлове исключение, но вопрос остается тот же.
package com.javarush.task.task15.task1527;
import javax.swing.*;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.lang.reflect.Array;
import java.util.ArrayList;
/*
Парсер реквестов
*/
public class Solution {
public static void main(String[] args) {
BufferedReader reader = null;
String URL = null;
try
{
reader = new BufferedReader (new InputStreamReader (System.in));
URL = reader.readLine();
} catch (IOException e) {
e.printStackTrace();
} finally {
assert reader != null;
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
int startPointsParameters = 0;
String parameters = null;
String [] ParameterArr = null;
ArrayList<String> objArr = new ArrayList<>();
if (URL.contains("?"))
{
startPointsParameters = URL.indexOf("?");
parameters = URL.substring(startPointsParameters + 1);
}
ParameterArr = parameters.split("&");
for (String pam : ParameterArr) {
if (pam.contains("=")){
int intTest = pam.indexOf("=");
String test = pam.substring(0, intTest);
System.out.print(test);
} else
System.out.print(pam);
if (pam.contains("obj")) {
int intTest = pam.indexOf("=");
String test = pam.substring(intTest + 1);
objArr.add(test);
}
System.out.print(" ");
}
System.out.println("");
for (String obj : objArr) {
try
{
double anotherTest = Double.parseDouble(obj);
alert(anotherTest);
} catch (NumberFormatException e) {
alert(obj);
}
}
}
public static void alert(double value) {
System.out.println("double: " + value);
}
public static void alert(String value) {
System.out.println("String: " + value);
}
}