Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

957 changes: 729 additions & 228 deletions .idea/workspace.xml

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions src/Main.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
public class Main {

public static void main(String[] args) {

System.out.println("Hello World!");
}
}
20 changes: 10 additions & 10 deletions src/com/geekhub/hw4/set/SetOperations.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,22 @@
import java.util.Set;

public interface SetOperations {
//��� ��������� � � � ����� (�=�), ���� ��� ������� �� ����� � ��� �� ���������
//Два множества А и В равны (А=В), если они состоят из одних и тех же элементов
boolean equals(Set a, Set b);

//������������ (������) �������� � � � ���������� ��������� � ? ,
//�������� �������� ����������� ���� �� ������ �� ���� ��������
//Объединением (суммой) множеств А и В называется множество А ? В,
//элементы которого принадлежат хотя бы одному из этих множеств
Set union(Set a, Set b);

//��������� �������� � � � ���������� ��������� ��, �������� ��������
//����������� ��������� �, �� �� ����������� ��������� �
//Разностью множеств А и В называется множество АВ, элементы которого
//принадлежат множеству А, но не принадлежат множеству В
Set subtract(Set a, Set b);

//������������ (�������������) �������� � � � ���������� ��������� � ? ,
//�������� �������� ����������� ��� ��������� �, ��� � ��������� �
//Пересечением (произведением) множеств А и В называется множество А ? В,
//элементы которого принадлежат как множеству А, так и множеству В
Set intersect(Set a, Set b);

//������������ ��������� �������� � � � ���������� ��������� � ? ,
//���������� ������������ ��������� �������� �� � ��, �� ���� � ? = (��) ? (��)
//Симметричной разностью множеств А и В называется множество А ? В,
//являющееся объединением разностей множеств АВ и ВА, то есть А ? В = (АВ) ? (ВА)
Set symmetricSubtract(Set a, Set b);
}
}
43 changes: 43 additions & 0 deletions src/com/geekhub/hw4/set/SetOperationsReaslization.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
package com.geekhub.hw4.set;

import java.util.HashSet;
import java.util.Set;

/**
* Created by developer on 28.11.2015.
*/
public class SetOperationsReaslization implements SetOperations {
@Override
public boolean equals(Set a, Set b) {
return a.equals(b);
}

@Override
public Set union(Set a, Set b) {
Set<Object> ab1 = new HashSet<>();
ab1.add(a);
ab1.add(b);
return ab1;
}

@Override
public Set subtract(Set a, Set b) {
Set<Object> ab2 = new HashSet<>();
ab2.addAll(a);
ab2.removeAll(b);
return ab2;
}

@Override
public Set intersect(Set a, Set b) {
Set<Object> ab3 = new HashSet<>();
ab3.addAll(a);
ab3.retainAll(b);
return ab3;
}

@Override
public Set symmetricSubtract(Set a, Set b) {
return union(subtract(a, b), subtract(b, a));
}
}
21 changes: 20 additions & 1 deletion src/com/geekhub/hw4/taskmanager/Task.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,24 @@ public class Task {
private String category;
private String description;

/*...*/
public Task(String category, String description){
this.category = category;
this.description = description;
}

public String getCategory(){
return category;
}

public void setCategory(String category){
this.category = category;
}

public String getDescription(){
return description;
}

public void setDescription(){
this.description = description;
}
}
63 changes: 63 additions & 0 deletions src/com/geekhub/hw4/taskmanager/TaskManagerRealization.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
package com.geekhub.hw4.taskmanager;

import java.util.*;

/**
* Created by developer on 28.11.2015.
*/
public class TaskManagerRealization implements TaskManager {
Map<Date, Task> tasks = new TreeMap<>();
@Override
public void addTask(Date date, Task task) {
tasks.put(date, task);
}

@Override
public void removeTask(Date date) {
tasks.remove(date);

}

@Override
public Collection<String> getCategories() {
Collection<String> categories = new ArrayList<>();
for (Task task : tasks.values()) {
categories.add(task.getCategory());
}
return categories;
}

@Override
public Map<String, List<Task>> getTasksByCategories() {
Map<String, List<Task>> taskByCategories = new HashMap<>();
for(String category: getCategories()) {
taskByCategories.put(category, getTasksByCategory(category));
}

return taskByCategories;
}

@Override
public List<Task> getTasksByCategory(String category) {
List<Task> tasksByCategory = new ArrayList<>();
for (Task task : tasks.values()){
if (task.getCategory().equals(category)){
tasksByCategory.add(task);
}
}
return null;
}

@Override
public List<Task> getTasksForToday() {
List<Task> tasksForToday = new ArrayList<>();

for (Date date : tasks.keySet()){
if(date.equals(new Date())){
tasksForToday.add(tasks.get(date));
}
}

return tasksForToday;
}
}