I don't use !!, or !$, because I prefer to see what command is being executed before I press enter.
I use zsh (with oh-my-zsh) and when I type e.g. "sudo !!" and press enter, it doesn't execute the command, instead it expands the !!. Another enter will then actually execute it.
I believe it's default behavior for oh-my-zsh. At least, I don't recall manually changing this.