Basically, null! applies the ! operator to the value null.
This overrides the nullability of the value null to non-nullable, telling the compiler that null is a "non-null" type. The expression "NULL = NULL" evaluates to NULL, but is actually invalid in SQL; yet ORDER BY treats NULLs as equal (whatever they precede or follow "regular" values is left to DBMS vendor). Understanding the difference between “IS NULL” and “= NULL” When a variable is created in SQL with the declare statement it is created with no data and stored in the variable table (vtable) inside SQLs memory space. The vtable contains the name and memory address of the variable.
null apple, The null reference can always be cast to any reference type. In practice, the programmer can ignore the null type and just pretend that null is merely a special literal that can be of any reference type. What is null? As the JLS quote above says, in practice you can simply pretend that it's "merely a special literal that can be of any reference ... 135 NULL has no value, and so cannot be compared using the scalar value operators.
null apple, In other words, no value can ever be equal to (or not equal to) NULL because NULL has no value. Hence, SQL has special IS NULL and IS NOT NULL predicates for dealing with NULL. sql - Not equal <> != operator on NULL - Stack Overflow The surprise expressed by JavaScript developers at typeof null === "object" is the result of an impedance mismatch (or abstraction leak) between a weakly-typed language (JavaScript) that has both null and undefined, and another, strongly-typed language (Java) that only has null, and in which null is strictly defined to refer to a reference type ... javascript - Why is null an object and what's the difference between ...