Fix [SonarQube] Use Index Of Char (String.indexOf(char) is faster than
String.indexOf(String))
Fix [SonarQube] Loose Coupling (Avoid using implementation types like
'ArrayList'; use the interface instead)

Fix [SonarQube] Synchronized class Vector should not be used (Replace
the synchronized class "Vector" by an unsynchronized one such as
"ArrayList" or "LinkedList")
Fix [SonarQube] Loose Coupling (Avoid using implementation types like
'TreeMap'; use the interface instead)
Fix [SonarQube] Loose Coupling (Avoid using implementation types like
'HashMap'; use the interface instead)
Fix [SonarQube] Unused local variable
Fix [SonarQube] Collection.isEmpty() should be used to test for
emptiness (Use isEmpty() to check whether the collection is empty or
not)