Yes, it is safe to abruptly shut off an Arduino.
Well, mostly safe.
The processors used in the various Arduinos have three types of memory:
Flash - Where your program is stored. Your program can read stuff from here, but cannot write it.
RAM - Where your program variables are kept while the program in running. The data here disappear when you turn the Arduino off. Your program reads and writes here constantly.
EEPROM - Where your program can store stuff it will need the next time it runs. Usually stuff that changes rarely, but is needed anytime the program runs. Like calibration data for a sensor.
Most programs only use Flash and RAM. You can switch the Arduino on and off any time you like with those programs.
If your program writes to EEPROM, then shutting off the power while writing to the EEPROM could corrupt the data there.
How that affects your program depends on what the data is.
If it corrupts the calibration data for a sensor, you would get bad measurements for whatever the sensor is detecting.
If you write checksums with your EEPROM data, then you could detect the corruption and your program could shut down instead of using bad data.
You, of course, would know if your program writes to the EEPROM - you have to load a seperate library and use special commands to read and write to the EEPROM area.
The danger is really only in that short moment when you write to the EEPROM. Since that happens rarely (and usually only under controlled conditions) it will also be rare to corrupt the EEPROM data.
Summary:
You can turn an Arduino on and off at will with no danger, unless you are using the EEPROM - and even then you will get away with it most of the time.