& 는 비트연산이라고 해요~
byte b 는 자료형이 바이트, 즉 8개의 비트가 모인 형태 >> 0000 0000 이구요.
0x7f 는 역시 16진수 표현으로 1바이트이구요, 비트로 표현 시 >> 0111 1111 가 되겠습니다.
앞4자리 0111이 7을 의미하고 뒤4자리 1111이 f 를 나타냅니다.
그래서 & 연산을 하게 되면
0000 0000
0111 1111 에서 각 자리가 둘다 1인 경우만 1로 한다. 이므로 값은 0이 되겠죠?
만약 byte b = 0x01; 을 넣어주면
0000 0001
0111 1111 이 되므로 연산 결과는 0000 0001 이 되어 result 값을 출력하면 1이 나오게 됩니다.