Bluetooth response

I have bluetooth HC-05 Connected on pins 2 & 3 on Arduino Uno
I send data ( numbers ) from mobile application
And i read the data and use it in switch case to move a car
But the response is very slow that the car moves too much after i click the button in the app
Especially when i switch from one button to another
In another word change the value recieved

// Bluetooth
#include <SoftwareSerial.h>
SoftwareSerial HC05(2,3) ;
String data ;
int Data;

void setup() {
 Serial.begin (9600) ;
 HC05.begin (9600) ;


void loop() {

  if (HC05.available()>0) {
   data = HC05.readString() ;
    Data = data.toInt();
 //  Serial.println (Data);

 switch (Data)
        case 1:
               Forward ();
        case 2:
               Left ();
        case 3:
               Stop ();
        case 4:
               Right ();
        case 5:
               Backward ();
        case 6:
               get_RFID_name ();
data = HC05.readString() ;

The readString function blocks until it receives a line ending or times out (1 second, I believe). And using the String class can cause memory problems. Better to read the data into a string (null terminated character array) in a non blocking fashion. The serial input basics tutorial will show you how.

Which example should i be using ?

It looks like you are sending a single character (with no line ending?) that you translate to a number so start with the first example.

You would not have to do the conversion

Data = data.toInt();

if you use characters in the cases:

case '1':

Try to get away from using String objects. It is easy misuse them and end up with holes in your SRAM memory and weird bugs. Use c_strings (or just strings) instead.

Functions for operating with strings.