Добрый вечер,
У меня есть довольно громоздкий и нечитаемый код, который я пытаюсь упростить, есть ли хорошие практики, которые вы можете порекомендовать
public static String getPropertybyId(){
Scanner reader = new Scanner(System.in); // Reading from System.in
System.out.println("Enter an id number to search properties: ");
int n = reader.nextInt(); // Scans the next token of the input as an int.
reader.close();
System.out.println(id.get(n) +", "+ property_address.get(n) +", "+ first_name.get(n) +", "+ last_name.get(n) +", "+
email.get(n) +", "+
owner_address.get(n) +", "+
price.get(n)+", "+
date_sold.get(n));
return id.get(n) +" ,"+ property_address.get(n) +" ,"+ first_name.get(n) +" ,"+ last_name.get(n) +" ,"+
email.get(n) +" ,"+
owner_address.get(n) +" ,"+
price.get(n);
}
public static void getTopProperties(){
price.remove(0);
int n = 0;
while (n < price.size()){
price.set(n,((price.get(n)).substring(1)));
n = n + 1;
}
Collections.sort(price);
Scanner reader = new Scanner(System.in); // Reading from System.in
System.out.println("Enter a number for the list size of top properties: ");
int user = reader.nextInt(); // Scans the next token of the input as an int.
shrinkTo(price, user);
reader.close();
System.out.println(price);
}
public static void shrinkTo(List list, int newSize) {
int size = list.size();
if (newSize >= size) return;
for (int i = newSize; i < size; i++) {
list.remove(list.size() - 1);
}
Для getPropertybyID я возвращаю вседетали для собственности, такие как имя владельца и цена согласно номеру удостоверения личности.Есть ли способ, чтобы hashmap или связать различные массивы вместе, чтобы у меня не было такого длинного оператора return?
вот мои массивы:
private static List<String> id = new ArrayList<String>();
private static List<String> property_address = new ArrayList<String>();
private static List<String> first_name = new ArrayList<String>();
private static List<String> last_name = new ArrayList<String>();
private static List<String> email = new ArrayList<String>();
private static List<String> owner_address = new ArrayList<String>();
private static List<String> price = new ArrayList<String>();
private static List<String> date_sold = new ArrayList<String>();
для getTopProperties, которые я хотел бы удалитьвызов другого класса и добавление этого дополнительного кода, но я не знаю, как.
Извините, если мой код не очень хорош, я новичок