diff --git a/src/main/java/me/tomassetti/symbolsolver/JavaParserFacade.java b/src/main/java/me/tomassetti/symbolsolver/JavaParserFacade.java
index <HASH>..<HASH> 100644
--- a/src/main/java/me/tomassetti/symbolsolver/JavaParserFacade.java
+++ b/src/main/java/me/tomassetti/symbolsolver/JavaParserFacade.java
@@ -275,8 +275,14 @@ public class JavaParserFacade {
             return getTypeConcrete(assignExpr.getTarget(), solveLambdas);
         } else if (node instanceof ThisExpr) {
             return new TypeUsageOfTypeDeclaration(getTypeDeclaration(findContainingTypeDecl(node)));
+        } else if (node instanceof ConditionalExpr) {
+            ConditionalExpr conditionalExpr = (ConditionalExpr)node;
+            return getTypeConcrete(conditionalExpr.getThenExpr(), solveLambdas);
+        } else if (node instanceof ArrayCreationExpr) {
+            ArrayCreationExpr arrayCreationExpr = (ArrayCreationExpr)node;
+            return convertToUsage(arrayCreationExpr.getType(), JavaParserFactory.getContext(node));
         } else {
-            throw new UnsupportedOperationException("FOO " + node.getClass().getCanonicalName());
+            throw new UnsupportedOperationException(node.getClass().getCanonicalName());
         }
     }
Consider ConditionalExpr and ArrayCreationExpr in getTypeConcrete