This is a little tricky one.
So first thing first,
below block will not work, so remove it.
try{
                (new WebDriverWait(driver, 6/*sec*/)).
                        until(ExpectedConditions.elementToBeClickable((By.className("clearfix "))));         Â
                        }
            catch(org.openqa.selenium.TimeoutException e){
                System.out.println(e.getMessage());
            }
because I can see that By.className("clearfix ") contains space and that will throw an exception for sure. That exception we are not throwing it back to the code and simply printing on console. So, that exception will never show up as an exception.
Second thing, as per my experience, clearfix is a very common class name. I am sure more than one element will be using that class name. So, again the code will fail either with an exception saying "class name can not have space" or your wait will simply pass because element if identified.
The right thing to do is, identify the autoList
List<WebElement> autoList = driver.findElements(By.className("list-unstyled ac-list"));
and wait until the size of this autoList is greater than 0.
Something like,
List<WebElement> autoList = driver.findElements(By.className("list-unstyled ac-list"));
do{
Thread.sleep(1000); //This thread.sleep will make thread wait for one second. It does not really harm and its good practice.
autoList = driver.findElements(By.className("list-unstyled ac-list"));
}while(autoList.size()>0);
Once it has some elements, then you can loop through using while,
for(WebElement al : autoList)
        {
            if(al.getText().contains("Armin")) {
                 al.click();
                    break;
            }
           Â
        }Â
        }Â