Encoding my Bitcoin Address with Base58 encoding I am trying to convert my Bitcoin Address with BitcoinJ in order to look like a normal address such as this:
1J7mdg5rbQyUHENYdx39WVWK7fsLpEoXZy.

I haven't found anything exept for the Base58.encode() which takes the getPubkeyHash() of my ECKey and returns something like this:
5ahorsFsHTcG3f662evowc5c9zf.

Which means that encodes the given bytes in base58,no checksum is appended according to the API.But i want my address to look like the above one.

Is there any algorithm in java  for encoding address_byte_string (consisting of 1-byte_version + hash_or_other_data + 4-byte_check_code)?

according to this:https://en.bitcoin.it/wiki/Base58Check_encoding
Yes.

ECKey key = ...;
String addr = key.toAddress(MainNetParams.get()).toString();


https://bitcoinj.github.io/javadoc/0.12/org/bitcoinj/core/ECKey.html#toAddress-org.bitcoinj.core.NetworkParameters-