Просмотр исходного кода

Добавлена функция insertAt

Alec 4 лет назад
Родитель
Сommit
d04b994e03

+ 6 - 0
.idea/encodings.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="Encoding">
+    <file url="PROJECT" charset="UTF-8" />
+  </component>
+</project>

+ 1 - 1
.idea/misc.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
-  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
+  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="13" project-jdk-type="JavaSDK">
     <output url="file://$PROJECT_DIR$/out" />
   </component>
 </project>

BIN
out/production/ExampleJavaList/com/company/Bank.class


BIN
out/production/ExampleJavaList/com/company/Bill.class


BIN
out/production/ExampleJavaList/com/company/Main.class


BIN
out/production/javaProject/com/company/Bank.class


BIN
out/production/javaProject/com/company/Bill.class


BIN
out/production/javaProject/com/company/Main.class


+ 22 - 1
src/com/company/Bank.java

@@ -33,7 +33,7 @@ public class Bank {
         return name;
     }
 
-    public void Add(String passport, String phone, String name, double balance) {
+    public void insert(String passport, String phone, String name, double balance) {
         Bill newBill = new Bill(balance, passport, phone, name, count);
 
         if (Head == null) {
@@ -51,6 +51,27 @@ public class Bank {
         count++;
     }
 
+    public void insertAt(int indexAfter, String passport, String phone, String name, double balance) {
+        Bill newBill = new Bill(balance, passport, phone, name, count);
+
+        Bill current = Head;
+        if (indexAfter > count) {
+            while (current.Next != null) {
+                current = current.Next;
+            }
+        } else {
+            int index = 1;
+
+            while (index < indexAfter) {
+                current = current.Next;
+                index++;
+            }
+
+            newBill.Next = current.Next;
+        }
+        current.Next = newBill;
+    }
+
     public void ShowClientsInfo() {
         Bill current = Head;
 

+ 5 - 3
src/com/company/Main.java

@@ -5,9 +5,11 @@ public class Main {
     public static void main(String[] args) {
         Bank bank = new Bank("Сбербанк");
 
-        bank.Add("3505 543456", "+79634324568", "Ivan Ivanov", 35000);
-        bank.Add("3520 543344", "+79619983745", "Petr Petrov", 35000);
-        bank.Add("3425 764648", "+79095545237", "Grigorij Sidorov", 35000);
+        bank.insert("3505 543456", "+79634324568", "Ivan Ivanov", 35000);
+        bank.insert("3520 543344", "+79619983745", "Petr Petrov", 35000);
+        bank.insert("3425 764648", "+79095545237", "Grigorij Sidorov", 35000);
+
+        bank.insertAt(2, "", "", "", 0.0);
 
         bank.ShowClientsInfo();
     }