What is a perceptron? A perceptron is a feed-forward neural network with two layers, an input layer (that does no computation) and an output layer (that does all the computation).
The goal of a perceptron is to classify all points when given the linear training data. The code is complete with comments further explaining what a perceptron is and what it does.
A gif of the code in action with the default arrays (found in Main.java):
Notice how all points on the coordinate grid are classified in two colors, either green or red. A perceptron is a binary classifier. Its goal is to classify points into two groups. It just so happens that the easiest data to visualize is a coordinate grid with x & y inputs. The points in the gif are exaggerated to show their location.
All classes are mine. (0, 0) is located in the top left corner.