Добрый день.
Видимо предполагается другое решение, но этот код задачу отрабатывает.
мне был хотелось понимать, если кто-то объяснит, выполняет ли мой код все условия задачи ?
если нет, укажите, плз, на ошибки.
Спасибо!
PS: под правильное решение перепишу, попозже.
public class Solution {
public static void main(String[] args) throws IOException {
//напиште тут ваш код
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
Collection<String> stObjects = new ArrayList<>();
while (true) {
String x = bufferedReader.readLine();
if (x.equals("exit")) {
break;
} else {
stObjects.add(x);
}
}
for (String i: stObjects){
if (isNumeric(i) == false){
print(i);
} else if (isNumeric(i) == true) {
if (i.contains(".")){
print(Double.parseDouble(i));
} else if (!i.contains(".") && Short.parseShort(i) > 0 && Short.parseShort(i) < 128) {
print(Short.parseShort(i));
} else {
Integer integer = Integer.valueOf(i);
print(integer);
}
}
}
}
//System.out.println(objects);
public static boolean isNumeric (String str) {
try {
Double.parseDouble(str);
return true;
} catch (NumberFormatException e) {
return false;
}
}
public static void print(Double value) {
System.out.println("Это тип Double, значение " + value);
}
public static void print(String value) {
System.out.println("Это тип String, значение " + value);
}
public static void print(short value) {
System.out.println("Это тип short, значение " + value);
}
public static void print(Integer value) {
System.out.println("Это тип Integer, значение " + value);
}
}
package com.javarush.task.task15.task1519;
import com.sun.org.apache.xpath.internal.operations.Number;
import sun.net.www.ParseUtil;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collection;
import java.text.NumberFormat;
/*
Разные методы для разных типов
*/
public class Solution {
public static void main(String[] args) throws IOException {
//напиште тут ваш код
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
Collection<String> stObjects = new ArrayList<>();
while (true) {
String x = bufferedReader.readLine();
if (x.equals("exit")) {
break;
} else {
stObjects.add(x);
}
}
for (String i: stObjects){
if (isNumeric(i) == false){
print(i);
} else if (isNumeric(i) == true) {
if (i.contains(".")){
print(Double.parseDouble(i));
} else if (!i.contains(".") && Short.parseShort(i) > 0 && Short.parseShort(i) < 128) {
print(Short.parseShort(i));
} else {
Integer integer = Integer.valueOf(i);
print(integer);
}
}
}
}
//System.out.println(objects);
public static boolean isNumeric (String str) {
try {
Double.parseDouble(str);
return true;
} catch (NumberFormatException e) {
return false;
}
}
public static void print(Double value) {
System.out.println("Это тип Double, значение " + value);
}
public static void print(String value) {
System.out.println("Это тип String, значение " + value);
}
public static void print(short value) {
System.out.println("Это тип short, значение " + value);
}
public static void print(Integer value) {
System.out.println("Это тип Integer, значение " + value);
}
}