balanceOfmethod. To get this list you have to scan transaction receipts starting from the beginning of the chain and check whether given address is a part of Logs related to token transfers.
I would like to crawl an Ethereum network completely,is there any way?
You need a fully synced node and then use Web3j to run log queries with your address in topics related to the events of contracts targeted by your search. Log query https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_getlogs
Is randao implemented in Ethereum using smart contracts?
There is a contract-based implementation here https://github.com/randao/randao. And there is an implementation built in a Beacon Chain: https://github.com/ethereum/eth2.0-specs/blob/dev/specs/core/0_beacon-chain.md#randao
Once two way bridge between Eth1 and Eth2 is built this randao source could be used in Eth1.
I see zksnark code in ethereumJ, are there some tests code or exanple for beginner to run ?
They are implemented in EthereumJ code as a part of test suite implementation https://github.com/ethereum/ethereumj/blob/develop/ethereumj-core/src/test/java/org/ethereum/jsontestsuite/GitHubStateTest.java#L264-L272