package com.javarush.test.level15.lesson12.home01; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; /* Разные методы для разных типов 1. Считать с консоли данные, пока не введено слово "exit". 2. Для каждого значения, кроме "exit", вызвать метод print. Если значение: 2.1. содержит точку '.', то вызвать метод print для Double; 2.2. больше нуля, но меньше 128, то вызвать метод print для short; 2.3. больше либо равно 128, то вызвать метод print для Integer; 2.4. иначе, вызвать метод print для String. */ public class Solution { public static void main(String[] args) throws IOException { //напиште тут ваш код ArrayList<String> list = new ArrayList<>(); String x; BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); while(true) { x = reader.readLine(); if (x.equals("exit")) break; else list.add(x); } for (String a : list) { try { char[] ch = a.toCharArray(); if (String.valueOf(ch).contains(".")) { print(Double.parseDouble(a)); } else if (Integer.parseInt(a) < 128 && (Integer.parseInt(a) > 0)) print(Short.parseShort(a)); else if (Integer.parseInt(a) >= 128) print(Integer.parseInt(a)); } catch (NumberFormatException e) { print(a); } } } 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); } }
Leave A Comment