Я написал простой алгоритм, который преобразует двоичное число в формате String в массив байтов. Я использую int для вычисления численного значения для 8 бит, а затем отбрасывает его в байт.Ошибка JUnit при покании байта?
Проблема возникает, когда я запускаю следующий код в JUnit:
assertEquals(new byte[] {(byte) 0} , Set1.binToBytes("00000000"));
Так строка с 8 нулями должно привести к 0 байт. Он заканчивается AssertionError. При трассировке переменных во время отладки, я нашел следующее:
Ожидаемое: [0] Фактический: [0]
Является ли это ошибка в JUnit, или я что-то напутал? Являются ли эти два выше в разных типах?
После запуска теста JUnit все, я обнаружил следующую ошибку:
java.lang.AssertionError: expected:<[[email protected]> but was:<[[email protected]>
Equals (и assertEquals) не проверяют равенство массива: 'arr1.equals (arr2)' будет только true, если 'arr1 == arr2'. – user2864740