Объявление массива в Java как объекта?

1

Недавно я читал несколько руководств о том, как программировать и программировать public static void для массива, в учебнике сказано объявить массив как объект. Ниже приведен код для массива, и в конце кода я разделил между двумя разделами так, что это видно, когда мой вопрос лежит

import java.io.*;
import java.lang.*;
public class LoginList
{
int arraySize=500;
Login[] arrayLogin=new Login[arraySize];
int nextPosition=0;
int LoginLocation=-1;


public void addLogin(Login tempLoginParameters)
{
    arrayLogin[nextPosition] = tempLoginParameters;
    nextPosition++;
}


public void writeLogins()
{
    try
    {
        BufferedWriter LoginWriter = new BufferedWriter(new FileWriter("LoginDetails.txt"));
        for(int i=0;i<nextPosition;i++)
        {
            LoginWriter.write(arrayLogin[i].toString());
            LoginWriter.newLine();
        }
        LoginWriter.close();
    }

    catch(Exception e)
    {
        System.out.println("Error with writer");
    }
}


public void readLogins()
{
    try
    {
        BufferedReader LoginReader = new BufferedReader(new FileReader("LoginDetails.txt"));
        String ReadLine = LoginReader.readLine();

        while(ReadLine!= null)
        {
            String[] arrayStringLogin = ReadLine.split(", ");
            Login tempLogin = new Login();
            tempLogin.UserName = arrayStringLogin[0];
            tempLogin.Password = arrayStringLogin[1];
            arrayLogin[nextPosition] = tempLogin;
            nextPosition++;
            ReadLine = LoginReader.readLine();
        }
    }
    catch(Exception e)
    {
        System.out.println("Error with reader");
    }
}


public void displayLoginDetails()
{
    for(int i=0;i<nextPosition;i++)
    {
        System.out.println("Login "+nextPosition+": "+arrayLogin[i].toString());
    }
}


public void searchLogins(String TempLog)
{
    LoginLocation=-1;

    for(int i=0;i<nextPosition;i++)
    {
        if(arrayLogin[i].UserName.equals(TempLog))
        {
            System.out.println("Match At Position:"+i);
            LoginLocation=i;
        }

        else
        {
            System.out.println("No match for UserName");
        }

    }
}

public static void main(String[] args)
{
    LoginList ll = new LoginList(); //Declares the array as an object

Почему вы должны объявлять массив как объект? Посмотрите прямо здесь.

    Login tempLogin = new Login();
    ll.readLogins();
    ll.displayLoginDetails();
}
}
Теги:
arrays

1 ответ

3

LoginList не является массивом, это класс, который имеет массив объектов Login как один из его экземпляров. Основной код создает объект типа LoginList и вызывает его методы; объект LoginList использует массив внутри, но основной метод не должен знать об этом.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню