Since you are using a 2D array to store the state of your game map, the player location should be integers (x and y) that store the row and the column you are currently in.
So if you want to move on the next tile, you need to move your player by 1 unit not 16 pixels which is linked to how you display your game (what if you increase the size of the tiles? You’ll always want to split the logical part from the graphical part of your game)