From 4b07283811ec892936670d42ed85c12a83cebebf Mon Sep 17 00:00:00 2001
From: Oscar Bauer <oscar.bauer@etu.univ-amu.fr>
Date: Mon, 2 Dec 2024 17:10:59 +0100
Subject: [PATCH] en train de Q9 tp10

---
 .../exo1/IntegerComparatorDescending.java     | 16 +++++++
 .../exo1/TestIntegerComparatorDescending.java | 17 ++++++++
 .../src/tp10/exo1/TestSortOfInteger.java      | 26 +++++++++++
 .../src/tp10/exo2/TestDisplayUniqueWords.java | 21 +++++++++
 .../TestDisplayUniqueWordsByAlphabet.java     | 22 ++++++++++
 .../tp10/exo2/TestDisplayWordOccurrences.java | 23 ++++++++++
 .../CCI_Java/src/tp10/exo2/WordsManager.java  | 43 +++++++++++++++++++
 7 files changed, 168 insertions(+)
 create mode 100644 CCI_Java/CCI_Java/src/tp10/exo1/IntegerComparatorDescending.java
 create mode 100644 CCI_Java/CCI_Java/src/tp10/exo1/TestIntegerComparatorDescending.java
 create mode 100644 CCI_Java/CCI_Java/src/tp10/exo1/TestSortOfInteger.java
 create mode 100644 CCI_Java/CCI_Java/src/tp10/exo2/TestDisplayUniqueWords.java
 create mode 100644 CCI_Java/CCI_Java/src/tp10/exo2/TestDisplayUniqueWordsByAlphabet.java
 create mode 100644 CCI_Java/CCI_Java/src/tp10/exo2/TestDisplayWordOccurrences.java
 create mode 100644 CCI_Java/CCI_Java/src/tp10/exo2/WordsManager.java

diff --git a/CCI_Java/CCI_Java/src/tp10/exo1/IntegerComparatorDescending.java b/CCI_Java/CCI_Java/src/tp10/exo1/IntegerComparatorDescending.java
new file mode 100644
index 0000000..7b75a7f
--- /dev/null
+++ b/CCI_Java/CCI_Java/src/tp10/exo1/IntegerComparatorDescending.java
@@ -0,0 +1,16 @@
+package tp10.exo1;
+
+import java.util.Comparator;
+
+public class IntegerComparatorDescending implements Comparator<Integer> {
+
+	@Override
+	public int compare(Integer o1, Integer o2) {
+		if (o1 > o2)
+			return -1;
+		if (o1 == o2)
+			return 0;
+		return 1;
+	}
+
+}
diff --git a/CCI_Java/CCI_Java/src/tp10/exo1/TestIntegerComparatorDescending.java b/CCI_Java/CCI_Java/src/tp10/exo1/TestIntegerComparatorDescending.java
new file mode 100644
index 0000000..68a193c
--- /dev/null
+++ b/CCI_Java/CCI_Java/src/tp10/exo1/TestIntegerComparatorDescending.java
@@ -0,0 +1,17 @@
+package tp10.exo1;
+
+import java.util.ArrayList;
+import java.util.Collections;
+
+public class TestIntegerComparatorDescending {
+
+	public static void main(String[] args) {
+
+		IntegerComparatorDescending comp = new IntegerComparatorDescending();
+		System.out.println(comp.compare(43, 4));
+		
+		
+
+	}
+
+}
diff --git a/CCI_Java/CCI_Java/src/tp10/exo1/TestSortOfInteger.java b/CCI_Java/CCI_Java/src/tp10/exo1/TestSortOfInteger.java
new file mode 100644
index 0000000..0dc4a9f
--- /dev/null
+++ b/CCI_Java/CCI_Java/src/tp10/exo1/TestSortOfInteger.java
@@ -0,0 +1,26 @@
+package tp10.exo1;
+
+import java.util.ArrayList;
+import java.util.Collections;
+
+public class TestSortOfInteger {
+
+	public static void main(String[] args) {
+
+		ArrayList<Integer> values = new ArrayList<Integer>();
+		values.add(2);
+		values.add(4);
+		values.add(30);
+		values.add(21);
+		values.add(1);
+		System.out.println(values);
+		Collections.sort(values);
+		System.out.println(values);
+		IntegerComparatorDescending comp = new IntegerComparatorDescending();
+		Collections.sort(values, comp);
+		System.out.println(values);
+		
+
+	}
+
+}
diff --git a/CCI_Java/CCI_Java/src/tp10/exo2/TestDisplayUniqueWords.java b/CCI_Java/CCI_Java/src/tp10/exo2/TestDisplayUniqueWords.java
new file mode 100644
index 0000000..5b1d131
--- /dev/null
+++ b/CCI_Java/CCI_Java/src/tp10/exo2/TestDisplayUniqueWords.java
@@ -0,0 +1,21 @@
+package tp10.exo2;
+
+import java.util.HashSet;
+
+public class TestDisplayUniqueWords {
+
+	public static void main(String[] args) {
+		
+		WordsManager man = new WordsManager(new HashSet<String>());
+		man.addWord("test1");
+		man.addWord("test2");
+		man.addWord("test3");
+		man.addWord("test4");
+		man.addWord("test2");
+		
+		man.displayUniqueWords();
+		man.displayWordOccurrences();
+
+	}
+
+}
diff --git a/CCI_Java/CCI_Java/src/tp10/exo2/TestDisplayUniqueWordsByAlphabet.java b/CCI_Java/CCI_Java/src/tp10/exo2/TestDisplayUniqueWordsByAlphabet.java
new file mode 100644
index 0000000..850f3fc
--- /dev/null
+++ b/CCI_Java/CCI_Java/src/tp10/exo2/TestDisplayUniqueWordsByAlphabet.java
@@ -0,0 +1,22 @@
+package tp10.exo2;
+
+import java.util.HashSet;
+
+public class TestDisplayUniqueWordsByAlphabet {
+
+	public static void main(String[] args) {
+		WordsManager man = new WordsManager(new HashSet<String>());
+		man.addWord("test1");
+		man.addWord("test2");
+		man.addWord("test3");
+		man.addWord("test4");
+		man.addWord("btest2");
+		man.addWord("test2");
+		man.addWord("test3");
+		man.addWord("test4");
+		
+		man.displayUniqueWordsByAlphabet();
+
+	}
+
+}
diff --git a/CCI_Java/CCI_Java/src/tp10/exo2/TestDisplayWordOccurrences.java b/CCI_Java/CCI_Java/src/tp10/exo2/TestDisplayWordOccurrences.java
new file mode 100644
index 0000000..b4b656e
--- /dev/null
+++ b/CCI_Java/CCI_Java/src/tp10/exo2/TestDisplayWordOccurrences.java
@@ -0,0 +1,23 @@
+package tp10.exo2;
+
+import java.util.HashSet;
+
+public class TestDisplayWordOccurrences {
+
+	public static void main(String[] args) {
+		WordsManager man = new WordsManager(new HashSet<String>());
+		man.addWord("test1");
+		man.addWord("test2");
+		man.addWord("test3");
+		man.addWord("test4");
+		man.addWord("btest2");
+		man.addWord("test2");
+		man.addWord("test3");
+		man.addWord("test4");
+		
+		man.displayWordOccurrences();
+		man.displayUniqueWordsByAlphabet();
+
+	}
+
+}
diff --git a/CCI_Java/CCI_Java/src/tp10/exo2/WordsManager.java b/CCI_Java/CCI_Java/src/tp10/exo2/WordsManager.java
new file mode 100644
index 0000000..fe20ce9
--- /dev/null
+++ b/CCI_Java/CCI_Java/src/tp10/exo2/WordsManager.java
@@ -0,0 +1,43 @@
+package tp10.exo2;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+
+public class WordsManager {
+
+	HashSet<String> uniqueWords = new HashSet<String>();
+	private HashMap<String, Integer> wordOccurrences;
+
+	public WordsManager(HashSet<String> uniqueWords) {
+		this.uniqueWords = uniqueWords;
+		this.wordOccurrences = new HashMap<String, Integer>();
+		for (String word : uniqueWords)
+			wordOccurrences.put(word, 1);
+	}
+
+	void addWord(String word) {
+		uniqueWords.add(word);
+		wordOccurrences.put(word, wordOccurrences.getOrDefault(word, 0) + 1);
+	}
+
+	void displayUniqueWords() {
+		System.out.println(uniqueWords);
+	}
+
+	void displayWordOccurrences() {
+		System.out.println(wordOccurrences);
+	}
+	
+	void displayUniqueWordsByAlphabet() {
+		List<String> list = new ArrayList<>(this.uniqueWords);
+		Collections.sort(list);
+		System.out.println(list);
+	}
+	
+	void displayWordOccurrencesByAlphabet() {
+		
+	}
+}
-- 
GitLab