#Java 8, <s>77</s> <s>93</s> <s>74</s> <s>71</s> <s>69</s> 78 bytes

<s>

    int n=1111;int m=1;while(x>m++){n=Integer.parseInt((n*n+"").substring(0,4));}

    x->{int n=1111;int m=1;while(x>m++){n=Integer.parseInt((n*n+"").substring(0,4))‌​;}return n;}

    x->{int n=1111;for(;--x>0;){n=Integer.parseInt((n*n+"").substring(0,4));}}

    x->{long n=1111;for(;--x>0;){n=Long.valueOf((n*n+"").substring(0,4));}}
</s>

    x->{long n=1111;for(;--x>0;)n=Long.valueOf((n*n+"").substring(0,4));return n;}

Each repetition makes `n` the first 4 characters of `n*n`.


[Try Java online][4]!

###Post history:

 -  77 bytes: initial code (incomplete)

 - +16 bytes, by Olivier Grégoire: completed code by making it a Lambda function.

 - -19 bytes: replace `while` with `for` cycle.

 - -4 bytes: used `long`s instead of `int`s

 - -2 bytes, by Roman Gräf: removed unnecessary brackets

 - +9 bytes, missing `return` statement

**[Thanks][1] to @OlivierGrégoire and @RomanGräf for pointing out some issues!**

Wait, Java beats... (drumroll) [Clojure][2] *and* [Matlab][3] here! A big applause to Java please!



  [1]: http://meta.stackexchange.com/a/116635/320844
  [2]: http://codegolf.stackexchange.com/a/102007/60199
  [3]: http://codegolf.stackexchange.com/a/102032/60199
  [4]: https://www.compilejava.net/