diff --git a/JAVA/.classpath b/JAVA/.classpath
new file mode 100644
index 0000000..60f564f
--- /dev/null
+++ b/JAVA/.classpath
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/JAVA/.project b/JAVA/.project
new file mode 100644
index 0000000..eeb88f7
--- /dev/null
+++ b/JAVA/.project
@@ -0,0 +1,17 @@
+
+
+ JAVA
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+
+ org.eclipse.jdt.core.javanature
+
+
diff --git a/JAVA/Linked_List/LinkedList.java b/JAVA/Linked_List/LinkedList.java
new file mode 100644
index 0000000..1b360b1
--- /dev/null
+++ b/JAVA/Linked_List/LinkedList.java
@@ -0,0 +1,114 @@
+package Linked_List;
+
+public class LinkedList {
+ //intitializing head to null
+ Node head = null;
+ //declaring a runner pointer variable
+ Node runner;
+ //declaring size variable
+ int size = 0;
+
+ public void add(int data) {
+ Node n = new Node();
+ n.data = data;
+ if(head == null) {
+ head = n;
+ }
+ else {
+ runner = head;
+ //traverse to end
+ while(runner.next != null) {
+ runner = runner.next;
+ }
+ runner.next = n;
+ }
+ size++;
+ }
+ public void insertAtBegin(int data) {
+ Node n = new Node();
+ n.data = data;
+ n.next = head;
+ head = n;
+ size++;
+ }
+ public void inserAt(int data, int pos) {
+ Node n = new Node();
+ n.data = data;
+ if(pos < 0 || pos > size) {
+ throw new IllegalArgumentException();
+ }
+ else {
+ runner = head;
+ //traverse at 1 before pos
+ for(int i=0; i