Does $i^4$ equal $1?$
Yes. The powers of $i$ are cyclic, repeating themselves ever time the exponent increases by 4: $$i^0 = 1$$ $$i^1=i$$ $$i^2 = -1$$ $$i^3 = -i$$ $$i^4 = 1$$ $$i^5 = i$$ $$i^6 = -1$$ $$i^7 = -i$$ $$i^8 = 1$$ etc.
Your reasoning is excellent, and you should feel good about the fact that you figured this out on your own. The fact that your math teacher didn't know this is, in my professional opinion as a mathematics educator, a disgrace.
Edited to add: As Kamil Maciorowski notes in the comments, the pattern persists for negative exponents, as well. Specifically, $$i^{-1}= \frac{1}{i} = -i$$ If $\frac{1}{i}=-i$ seems odd, notice that $i(-i) = -i^2 = -(-1) = 1$, so $i$ and $-i$ are multiplicative inverses; therefore $i^{-1} = -i$. Once you know that, you can extend the pattern: $$i^{-1} = -i$$ $$i^{-2} = -1$$ $$i^{-3} = i$$ $$i^{-4} = 1$$ and so on.
Second update: The OP asks for some additional discussion of the property $\left( x^a \right)^b = x^{ab}$, so here is some background on that:
First, if $a$ and $b$ are natural numbers, then exponentiation is most naturally understood in terms of repeated multiplication. In this context, $x^a$ means $(x\cdot x\cdot \cdots \cdot x)$ (with $a$ factors of $x$ appearing), and $\left( x^a \right)^b$ means $(x\cdot x\cdot \cdots \cdot x)\cdot(x\cdot x\cdot \cdots \cdot x)\cdot \cdots \cdot (x\cdot x\cdot \cdots \cdot x)$, with $b$ sets of parentheses, each containing $a$ factors of $x$. Since multiplication is associative, we can drop the parentheses and recognize this as a product of $ab$ factors of $x$, i.e. $x^{ab}$.
Note that this reasoning works for any $x$, whether it is positive, negative, or complex. It even applies in settings were multiplication is noncommutative, like matrix multiplication or quaternions. All we need is that multiplication is associative, and that $a$ and $b$ be natural numbers.
Once we have established that $\left( x^a \right)^b = x^{ab}$ for natural numbers $a,b$ we can extend the logic to integer exponents. If $a$ is a positive number, and if $x$ has a multiplicative inverse, then we define $x^{-a}$ to mean the same thing as $\left(\frac1x\right)^a$, or (equivalently) as $\frac1{x^a}$. With this convention in place, it is straightforward to verify that for any combination of signs for $a,b$, the formula $\left(x^a\right)^b = x^{ab}$ holds.
Note however that in extending the formula to cover a larger set of exponents, we have also made it necessary to restrict the domain of values $x$ over which this property holds. If $a$ and $b$ are just natural numbers then $x$ can be almost any object in any set over which an associative multiplication is defined. But if we want to allow $a$ and $b$ to be integers then we have to restrict the formula to the case where $x$ is an invertible element. In particular, the formula $x^{a}$ is not really well-defined if $x=0$ and $a$ is negative.
Now let's consider the case where the exponents are not just integers but arbitrary rational numbers. We begin by defining $x^{1/a}$ to mean $\sqrt[a]{x}$. ( See Why does $x^{\frac{1}{a}} = \sqrt[a]{x}$? for a short explanation of why this convention makes sense.)
In this definition, we are assuming that $a$ is a natural number, and that $x$ is positive. Why do we need $x$ to be positive? Well, consider an expression like $x^{1/2}$. If $x$ is positive, this is (by convention) defined to be the positive square root of $x$. But if $x$ is negative, then $x^{1/2}$ is not a real number, and even if we extend our number system to include complex numbers, it is not completely clear which of the two complex square roots of $x$ this should be identified with. More or less the same problem arises when you try to extend the property to complex $x$: while nonzero complex numbers do have square roots (and $n$th roots in general), there is no way to choose a "principal" $n$th root.
Things get really crazy when you try to extend the property $\left(x^a\right)^b=x^{ab}$ to irrational exponents. If $x$ is a positive real number and $a$ is a real number, we can re-define the expression $x^a$ to mean $e^{a\ln x}$, and it can be proved that this re-definition produces the same results as all of the conventions above, but it only works because $\ln x$ is well-defined for positive $x$. As soon as you try to allow negative $x$, you run into trouble, since $\ln x$ isn't well-defined in that case. One can define logarithms of negative and complex numbers, but they are not single-valued, and there are all kinds of technicalities about choosing a "branch" of the logarithm function.
In particular -- and this is very important for the question at hand -- the identity $\left(x^a\right)^b=x^{ab}$ does not hold in general if $x$ is not a positive real number or if $a,b$ are not both integers. A lot of people misunderstand this, and indeed there are many, many, many, many questions on this site that are rooted in this misunderstanding.
But with respect to the question in the OP: It is perfectly reasonable to argue that $i^4 = \left(i^2 \right)^2$, because even though $i$ is a complex number, the exponents are integers, so the basic notion of exponentiation as repeated multiplication is reliable.
I'm surprised that none of the other answers pointed out the most important point in your question:
Obviously, this logic can be applied to any real numbers, but does it also apply to complex numbers?
This attitude is the right way to go. The logic you speak of is more precisely:
$x^{ab} = (x^a)^b$ for any real number $x$ and natural numbers $a,b$.
If you want the more general fact for integer exponents:
$x^{ab} = (x^a)^b$ for any real number $x \ne 0$ and integers $a,b$.
In fact it turns out that 'miraculously' we have an even more general fact for real exponents:
$x^{ab} = (x^a)^b$ for any real number $x > 0$ and reals $a,b$.
Notice that all these precise statements about real exponentiation show you clearly that you must know exactly what the objects are before you can apply any operations to them, not to say claim any properties about the resulting values.
For this reason it is actually an important question to ask whether there are corresponding rules for complex numbers.
Yes, but not as nice.
$x^{ab} = (x^a)^b$ for any complex number $x \ne 0$ and integers $a,b$. (*)
Here exponentiation is simply the result of starting from $1$ and repeatedly multiplying/dividing by $x$ where the number of times is specified by the exponent (multiplying for positive; dividing for negative). This fact holds in any structure that has invertible multiplication, including the field of rationals, the field of reals, and the field of complex numbers.
$x^{ab},x^a$ are well-defined since $x \ne 0$.
However, in general "$x^{ab} = (x^a)^b$" does not hold for complex $x$ even if $a,b$ are both rational. For instance (according to standard conventions):
$i = (-1)^{1/2} = (-1)^{(2 \times 1/4)} \ne ((-1)^2)^{1/4} = 1^{1/4} = 1$.
So it's excellent that you ask whether some new structure (complex numbers) have the same properties as some other structure (real numbers) instead of just blindly assuming it does.
The question was recently edited to ask for including an explanation of (*). Actually, there is nothing much to explain intuitively, since it boils down to the fact that an $ab$-fold repetition of an operation is the same as a $b$-fold repetition of an $a$-fold repetition of that operation. One can either stop there, but if one wants to ask why then one would need to fix a foundational system first, and in particular the rules concerning integers and induction/recursion. The below proof will use associativity of integer addition and multiplication, and distributivity of multiplication over addition for integers, which correspond to basic facts about repetition.
Suppose we have a field $S$ (such as the complex numbers) and an exponentiation operation that satisfies the following: $ \def\lfrac#1#2{{\large\frac{#1}{#2}}} $
$x^0 = 1$ for every $x \in S$.
$x^{k+1} = x^k x$ for every $x \in S$ and integer $k$.
Note that any reasonable foundational system is capable of defining such an operation recursively (you need one direction for positive $k$ and another for negative $k$), and can easily prove by induction the following two theorems.
$x^{a+b} = x^a x^b$ for every nonzero $x \in S$ and integers $a,b$.
Take any nonzero $x \in S$ and integer $a$.
Then $x^{a+0} = x^a = x^a x^0$.
Given any integer $b$ such that $x^{a+b} = x^a x^b$:
$x^{a+(b+1)} = x^{(a+b)+1} = x^{a+b} x = ( x^a x^b ) x = x^a ( x^b x ) = x^a x^{b+1}$.
$x^{a+(b-1)} = x^{(a+b)-1} = x^{a+b} \div x = ( x^a x^b ) \div x = x^a ( x^b \div x ) = x^a x^{b-1}$.
Therefore by induction $x^{a+b} = x^a x^b$ for every integer $b$.
$x^{ab} = (x^a)^b$ for every nonzero $x \in S$ and integers $a,b$.
Take any nonzero $x \in S$ and integer $a$.
Then $x^{a \times 0} = x^0 = 1 = (x^a)^0$.
Given any integer $b$ such that $x^{ab} = (x^a)^b$:
$x^{a(b+1)} = x^{ab+a} = x^{ab} x^a = (x^a)^b (x^a) = (x^a)^{b+1}$.
$x^{a(b-1)} = x^{ab-a} = x^{ab} \div x^a = (x^a)^b \div (x^a) = (x^a)^{b-1}$.
Therefore by induction $x^{ab} = (x^a)^b$ for every integer $b$.
Notice that we did not use commutativity here, which in fact shows that the argument holds in any division ring. If you restrict the exponents to natural numbers, then it clearly holds in any group when "nonzero" is deleted.
Finally, there are some nice properties that arise from the above properties such as:
$i^{k+4} = i^k i^4 = i^k (i^2)^2 = i^k (-1)^2 = i^k$ for any integer $k$.
In short, powers of $i$ (a square-root of $-1$ in the complex field) are cyclic.
Geometrically, multiplication by $i$ does the following to a complex number:
- Scales length by a factor of $1$
- Rotates 90 degrees
If you rotate by 90 degrees four times in the same direction, where do you end up?