-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathSolution.java
More file actions
88 lines (60 loc) · 3.43 KB
/
Solution.java
File metadata and controls
88 lines (60 loc) · 3.43 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
//I came out from the Father, and have come into the world. Again, I leave the world, and go to the Father. (John 16:28)
package com.javarush.task.task17.task1705;
import java.util.ArrayList;
import java.util.List;
/*
Сад-огород
*/
public class Solution {
public static void main(String[] args) {
}
public static class Garden {
public final List<String> fruits = new ArrayList<String>();
public final List<String> vegetables = new ArrayList<String>();
public synchronized void addFruit(int index, String fruit) {
fruits.add(index, fruit);
}
public synchronized void removeFruit(int index) {
fruits.remove(index);
}
public synchronized void addVegetable(int index, String vegetable) {
vegetables.add(index, vegetable);
}
public synchronized void removeVegetable(int index) {
vegetables.remove(index);
}
}
}
/*
Сад-огород
1. Создай метод public void addFruit(int index, String fruit) — который добавляет параметр fruit в лист fruits на позицию index
2. Создай метод public void removeFruit(int index) — который удаляет из fruits элемент с индексом index
3. Создай метод public void addVegetable(int index, String vegetable) — который добавляет параметр vegetable в лист vegetables на позицию index
4. Создай метод public void removeVegetable(int index) — который удаляет из vegetables элемент с индексом index
5. Класс Garden будет использоваться нитями. Поэтому сделай так, чтобы все методы блокировали мьютекс this
6. Реализуй это минимальным количеством кода
Требования:
1. Класс Garden должен содержать метод public void addFruit(int index, String fruit).
2. Класс Garden должен содержать метод public void removeFruit(int index).
3. Класс Garden должен содержать метод public void addVegetable(int index, String vegetable).
4. Класс Garden должен содержать метод public void removeVegetable(int index).
5. Метод addFruit(int index, String fruit) должен добавлять параметр fruit в лист fruits на позицию index.
6. Метод removeFruit(int index) должен удалять из fruits элемент с индексом index.
7. Метод addVegetable(int index, String vegetable) должен добавлять параметр vegetable в лист vegetables на позицию index.
8. Метод removeVegetable(int index) должен удалять из vegetables элемент с индексом index.
9. Все методы класса Garden должны блокировать мьютекс this (быть синхронизированы).
package com.javarush.task.task17.task1705;
import java.util.ArrayList;
import java.util.List;
*
Сад-огород
*
public class Solution {
public static void main(String[] args) {
}
public static class Garden {
public final List<String> fruits = new ArrayList<String>();
public final List<String> vegetables = new ArrayList<String>();
}
}
*/