I know that this question has been discussed in this page(Measure of reals in $[0,1]$ which don't have $4$ in decimal expansion), and I have read this question. I get the solution. However, I thought about another way, and it leads me to another answer, which I am confused. Btw, the question is given as the following:
Let A be the subset of $[0, 1]$ which consists of all numbers which do not have the digit $4$ appearing in their decimal expansion. Find $m(A)$.
The answer is $0$. However, I thought about this solution:
The set of all numbers not containing the digit $4$ in the decimal expansion, are numbers that are only containing $0, 1, 2, 3, 5, 6, 7, 8, 9$ in their decimal expansion. Set a function $f:\mathbb{N}\to\mathbb{N}$ such that: $$f(0)=0, f(1)=1, f(2)=2, f(3)=3, f(5)=4, f(6)=5, f(7)=6, f(8)=7, f(9)=8$$ Then, for any number, say $x=0.a_1a_2a_3a_4, ...$ in the set $A$, let $f(x)=0.f(a_1)f(a_2)f(a_3)f(a_4)..$. Then, this defines a one-to-one map from the set $A$ to $[0, 1]$, as the range of this function can be viewed as a hexadecimal of all numbers in $[0, 1]$. Therefore, the measure of set $A$ and the measure of set $[0, 1]$ must be the same, and $m(A)=1$.
Now, I know that my proof is wrong. Where am I wrong? Is it the 'one-to-one map exists, then the measure must be same' part?