Easier way to find matching array from a lot of arrays
For readability, use an Object instead of a 2d array.

E.G:

public class BluetoothMacAddress {
    private String macAddress;
    private float positionInBuilding;
}


Use java.util.List, then you can have a list of lists:

private sttaic final List&lt;MacAddress&gt; MAC_ADDRESSES_A_BLUETOOTH = Arrays.asList(
    new BluetoothMacAddress("B09122F5D126", "210.105"),  
    new BluetoothMacAddress("B09122F5F26B", "136.121"), 
    new BluetoothMacAddress("B09122F5F619", "181.172"));

private static final List&lt;List&lt;MAC_ADDRESSES&gt;&gt; MAC_ADDRESSES = Arrays.asList(
    MAC_ADDRESSES_A_BLUETOOTH,
    MAC_ADDRESSES_B_BLUETOOTH 
    ...
);


Your new method would then look something like this:

private MacAddress compareArrays(String[] beacon) {
    for (List&lt;MacAddress&gt; macAddresses : MAC_ADDRESSES ) {
        if (Arrays.equals(beacon, getFirstArray(macAddresses))) {
            return macAddresses;
        }
    }
    // not found
    return null;
}


You'd have to change the beacon parameter to be a MacAddress too, or convert the MacAddress to a String[] (or visa-versa).