Is a pullup resistor always required for a switch?

Sometimes you might want a pull up , sometimes a pull down , or you might connect other components requiring a certain setup

If you are using a float type switch you really need to use something to protect the Arduino - at least use a lowish value pull up or down ( 1k ?) plus protection diodes to prevent input voltages due to noise etc being negative or exceeding 5v . Ideally for such " real world apps", where you might have long leads etc , think about opto isolating the input