All versions of Java use a VM. All Java apps (even J2ME apps on Symbian) are compiled to bytecode and need a VM to run (the Java Runtime Environment is the VM needed to run Java apps). Nokias Mobile Runtime for Java Applications (JRT) is still a VM. Dalvik is just another bytecode compiled system.
So yeah, as a technical clarification, it doesn't run Java tokenized code--it recognizes Java LANGUAGE that you type in, but it generates DALVIK (Android) bytecode.