Question: I am developing a Java application and I need to do a symmetric encryption to secure some of my sensitive information. There are many algorithms like AES, DES 3DES in Java cryptography. What is the best algorithm should I use to encrypt my sensitive information?

Mostly I do have string values and there are couple of instances that I need to secure Java object.

Answer: 
**AES-128 (or higher)** is the recommended algorithm.

You should also choose a good **Chaining Method** with a random **Initialization Vector**. Padding variable length source data is helpful since AES is a block algorithm. `AES/CBC/PKCS5Padding` is a good option.

The encryption **Key** should be generated from a **Cryptographically Secure (Pseudo-)Random Number Generator**. (i.e. Java's `SecureRandom`)

Alternatively, the encryption key could be Derived from a reasonably strong Password using a suitable Key Derivation Function. ([comparison here](https://security.stackexchange.com/questions/138363/why-is-md5-considered-a-vulnerable-algorithm/138369#138369))

I'm assuming you need to encrypt data at rest. Key Management will have to be considered.

If you need to encrypt data in transit you'd also need MITM and Integrity verification, which is best accomplished with TLS. (HTTPS)
DES and 3DES aren't really considered strong encryption anymore. Look at Rijndael AES, there is an implementation available for java ( just search stack overflow). Ensure you read up on how to use salts and how to securely store your key.