What does a one-to-one mapping say about the cardinality of the reals if it isn't onto? Cantor had shown that for any two subsets containing all numbers in $\mathbb{R}$ on any two intervals, they must have equal cardinalities because one can find a bijective function. 
The famous example is that the cardinality on the set of Reals in $[0, 1]$ is equal to the cardinality on the set of Reals on $[0, 2]$. 
The bijection for the two sets is to simply multiply any $x$ in the first set by 2, and you have found a bijection. Define $\mathbb{A} = \{x\in\mathbb{R}: 0 \leq x \leq 1\}$ and define $\mathbb{B} = \{x \in \mathbb{R}: 0 \leq x \leq 2\}$, then our function is simply $f: x \mapsto 2x$.
What bugs me about this is that you can also find a mapping such that it is injective, but not surjective.
We simply define our function as $f: x \mapsto x$. This function maps every element $\mathbb{A}$ to an element in $\mathbb{B}$, but there are still elements left over in $\mathbb{B}$ that don't have an element in $\mathbb{A}$ mapping to it.
For finite sets, this would usually imply that $|\mathbb{B}| > |\mathbb{A}|$, ($\mathbb{B}$ is strictly larger than $\mathbb{A}$) but this doesn't seem to be the case for infinite sets.
The argument for finite sets can be easily explained as a way to count without numbers. For example, if you and I have a bunch of rocks, and you want to see who has more, you can line them up, and see who has left over at the end. In the analogy, if I all of my rocks have a unique rock from your set next to it, the mapping is injective. If all of your rocks have a unique rock from my set of rocks next to it, the function is surjective. If both are true, the function is bijective. If all of mine have a unique rock from your set next to it, but I have some left over, I have more. If all of your rocks have a unique rock from my set next to it, but you have left over, you have more. If there are none left over on either side, they are equal. But this no longer seems to work for infinite sets. Why?
 A: Definition


*

*We say $|A|=|B|$ if there exists a bijective function from $A$ to $B$.


*We say $|A|\leq|B|$ if there exists an injective function from $A$ to $B$.


*We say $|A|\geq |B|$ if there exists a surjective function from $A$ to $B$.
Added:


*We say $|A|<|B|$ if an injective function  $f:A\to B$ exists a surjective function $g:A\to B$ doesn't exist.


It is pretty clear from here that if we have $|A|=|B|$ we also have $|A|\leq |B|$  just like with real numbers, so there are no contradictions.
Remark
If we define $f:\Bbb B\to \Bbb A: x\mapsto \frac x 2$ we have an injective mapping, this tells us that $|B|\leq |A|$.
Remark 2
With real numbers we have the 'law' which states
$$a\leq b \wedge b\leq a\rightarrow a=b$$
When taking about cardinality, we have the a theorem which says that that relation still holds when taking about cardinals: The cantor-bernstein theorem.
Notice that this is not trivial: it says that if we have injections from both sides, there exists a bijection between the two sets.
A: The injective function $f$ given in OP implies that $|\mathbb{B}| \ge |\mathbb{A}|$.  Now consider the injective function $g:\mathbb{B}\to \mathbb{A}$ via $g:x\mapsto \frac{1}{3}x$, which proves that $|\mathbb{A}|\ge |\mathbb{B}|$.
We may combine these with the Shroder-Bernstein theorem to conclude that $|\mathbb{A}|=|\mathbb{B}|$.
A: I think you may be confused in regard to the following ;
The existence of a bijective map between two sets does not tell us anything about other potential bad maps.
Ie as you said you still can find functions that are not both surjective and injective , but as pointed out , Cantor-Bernstien will hopefully work it all out in the end 
