Search code examples
c#javakeywordas-keyword

Is there any keyword in Java which is similar to the 'AS' keyword of C#


As we know C# provides an AS keyword which automatically performs a check whether the Object is of a type and if it is, it then casts it to the needed type else gives a null.

public class User { }
Object obj = someObj;
User user = obj As User;

Here in the above example, An Object obj can be of type User or some other type. The user will either get an object of type User or a null. This is because the As keyword of C# first performs a check and if possible then performs a casting of the object to the resulting type.

So is there any keyword in Java which is equivalent to the AS keyword of C#?


Solution

  • You can create a helper method

    public static T as(Object o, Class<T> tClass) {
         return tClass.isInstance(o) ? (T) o : null;
    }
    
    User user = as(obj, User.class);