C/C++ or Fortran 95 or greater. Fortran is not dead and is still reigning high in the scientific world. So if people say that Fortran is not being used, that is not true. Also, don't forget to use the optimized high level math libraries. LAPACK, SCALAPACK, BLAS, etc. One thing I like about Fortran is the array slicing (less looping constructs required). MATLAB is a good package, but in the CFD community it is observed to be much much slower than either C/C++ or Fortran.
I can get stuff done much faster in Fortran than I can in C/C++, but that's because I have probably been writing it significantly longer. From an engineers prospective, Fortran is quicker to develop in and is slightly faster. From a computer science view, C/C++ have some advantages if you're proficient in the language, but until you're completely competent in the language, it's hard to get all of that working without quite a bit of specific practice.
Also, once you start feeling comfortable with you coding ability, look into these
OpenMP (multiprocessing for shared memory processing)
MPI (message passing interface, between non-shared memory processors[different cpus]. You can also use it with shared memory processors to keep memory separate.)
CUDA/OpenCL - C based languages for massively parallel computations using graphics cards.
I actually don't prefer Java, except for maybe making GUIs. I feel the totally compiled languages are better to use. Python also creates a great interface with several libraries (Cython, F2py, pyMPI, PyCUDA, etc.).
Good Luck.