Професионална програма
Loading...
+ Нов въпрос
sasobig12 avatar sasobig12 -4 Точки

Моля, помогнетете ми с намирането на грешката/ите!

Здравейте,

не предният ми въпрос зададен тук в форума не получих никаква помощ и все пак ще направя последн опит да помоля за такава! Ще се радвам ако някой, който разбира материята ми помогне да си намеря грешките и да стана по-добър в това което уча.

Решавам задача от Tech. Fund. JAVA / Задача № 2

https://softuni.bg/trainings/resources/officedocument/35528/java-exercise-technology-fundamental-september-2018/2056

На два теста имам грешка но не виждам каква е тя. С различни варианти на входни данни кода работи без видим дефект. Моля помогнете ми да откря в кои варианти кода се чупи.

Благодаря ви предварително!

Александър

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

public class TaskTwo {

    public static void main(String[] args) throws IOException {

        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

        List<Integer> numbers = Arrays.stream(reader.readLine().split(" "))
                .map(Integer::parseInt).collect(Collectors.toList());


        String line = reader.readLine();


        while (!line.equals("end")){

            String [] lineArray = line.split(" ");
            String command = lineArray[0];

            if(command.equals("Delete")){
                int object = Integer.parseInt(lineArray[1]);
                numbers = numbers.stream().filter(e -> e != object).collect(Collectors.toList());
            }else if(command.equals("Insert")){
                int index = Integer.parseInt(lineArray[2]);
                int object = Integer.parseInt(lineArray[1]);
                numbers.add(index, object);
            }


            line = reader.readLine();

        }

        for(int num : numbers){
            System.out.print(num + " ");
        }
    }
}

 

 

Тагове:
-1
Fundamentals Module 17/02/2019 13:54:40
sasobig12:
Решен проблем
sasobig12 avatar sasobig12 -4 Точки

Ще опитам.

 

Защо с филтър не работи?

0
sasobig12 avatar sasobig12 -4 Точки

Пак на същите два теста се чупи и с RemoveALL

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

public class TaskTwo {

    public static void main(String[] args) throws IOException {

        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

        List<Integer> numbers = Arrays.stream(reader.readLine().split(" "))
                .map(Integer::parseInt).collect(Collectors.toList());


        String line = reader.readLine();


        while (!line.equals("end")) {

            String[] lineArray = line.split(" ");
            String command = lineArray[0];

            if (command.equals("Delete")) {
                int object = Integer.parseInt(lineArray[1]);
                numbers.removeAll(Arrays.asList(object));
            } else if (command.equals("Insert")) {
                int index = Integer.parseInt(lineArray[2]);
                int object = Integer.parseInt(lineArray[1]);
                numbers.add(index, object);
            }

            line = reader.readLine();

        }

        for (int num : numbers) {
            System.out.print(num + " ");
        }
    }
}

0