Учебники

Функциональное программирование — списки

Список — это наиболее универсальный тип данных, доступный на функциональных языках программирования, который используется для хранения коллекции похожих элементов данных. Концепция похожа на массивы в объектно-ориентированном программировании. Элементы списка могут быть написаны в квадратных скобках, разделенных запятыми. Способ записи данных в список варьируется от языка к языку.

Программа для создания списка номеров в Java

Список не является типом данных в Java / C / C ++, но у нас есть альтернативные способы создания списка в Java, т. Е. С помощью ArrayList и LinkedList .

В следующем примере показано, как создать список в Java. Здесь мы используем метод Linked List для создания списка чисел.

Live Demo

import java.util.*; 
import java.lang.*; 
import java.io.*;  

/* Name of the class has to be "Main" only if the class is public. */ 

public class HelloWorld { 
   public static void main (String[] args) throws java.lang.Exception { 
      List<String> listStrings = new LinkedList<String>(); 
      listStrings.add("1"); 
      listStrings.add("2"); 
      listStrings.add("3"); 
      listStrings.add("4"); 
      listStrings.add("5"); 
  
      System.out.println(listStrings); 
   } 
} 

Это даст следующий результат —

[1, 2, 3, 4, 5] 

Программа для создания списка номеров в Erlang

Live Demo

-module(helloworld).  
-export([start/0]).   

start() ->  
   Lst = [1,2,3,4,5],  
   io:fwrite("~w~n",[Lst]). 

Это даст следующий результат —

[1 2 3 4 5]

Список операций в Java

В этом разделе мы обсудим некоторые операции, которые можно выполнять над списками в Java.

Добавление элементов в список

Методы add (Object), add (index, Object), addAll () используются для добавления элементов в список. Например,

ListStrings.add(3, “three”) 

Удаление элементов из списка

Методы remove (index) или removeobject () используются для удаления элементов из списка. Например,

ListStrings.remove(3,”three”)

Примечание. Для удаления всех элементов из списка используется метод clear ().

Извлечение элементов из списка

Метод get () используется для извлечения элементов из списка в указанном месте. Методы getfirst () и getlast () можно использовать в классе LinkedList. Например,

String str = ListStrings.get(2) 

Обновление элементов в списке

Метод set (index, element) используется для обновления элемента по указанному индексу с помощью указанного элемента. Например,

listStrings.set(2,”to”)

Сортировка элементов в списке

Методы collection.sort () и collection.reverse () используются для сортировки списка в порядке возрастания или убывания. Например,

Collection.sort(listStrings) 

Поиск элементов в списке

Следующие три метода используются согласно требованию —

Логический метод содержит (Object) возвращает true, если список содержит указанный элемент, иначе он возвращает false .

Метод int indexOf (Object) возвращает индекс первого вхождения указанного элемента в списке, иначе он возвращает -1, если элемент не найден.

int lastIndexOf (Object) возвращает индекс последнего вхождения указанного элемента в списке, иначе он возвращает -1, если элемент не найден.

Операции со списком в Erlang

В этом разделе мы обсудим некоторые операции, которые можно выполнять над списками в Erlang.

Добавление двух списков

Метод append (listfirst, listsecond) используется для создания нового списка путем добавления двух списков. Например,

append(list1,list2)

Удаление элемента

Метод delete (element, listname) используется для удаления указанного элемента из списка и возвращает новый список. Например,

delete(5,list1) 

Удаление последнего элемента из списка

Метод droplast (listname) используется для удаления последнего элемента из списка и возврата нового списка. Например,

droplast(list1) 

Поиск элемента

Метод member (element, listname) используется для поиска элемента в списке, если он найден, он возвращает true, иначе возвращает false. Например,

member(5,list1) 

Получение максимального и минимального значения

Методы max (listname) и min (listname) используются для поиска максимальных и минимальных значений в списке. Например,

max(list1) 

Сортировка элементов списка

Методы sort (listname) и reverse (listname) используются для сортировки списка в порядке возрастания или убывания. Например,

sort(list1) 

Добавление элементов списка

Метод sum (listname) используется для добавления всех элементов списка и возврата их суммы. Например,

sum(list1)

Сортировка списка в порядке возрастания и убывания с использованием Java

Следующая программа показывает, как сортировать список в порядке возрастания и убывания, используя Java —

Live Demo

import java.util.*; 
import java.lang.*; 
import java.io.*;  

public class SortList { 
   public static void main (String[] args) throws java.lang.Exception { 
      List<String> list1 = new ArrayList<String>(); 
      list1.add("5"); 
      list1.add("3"); 
      list1.add("1"); 
      list1.add("4"); 
      list1.add("2"); 
  
      System.out.println("list before sorting: " + list1); 
  
      Collections.sort(list1); 
  
      System.out.println("list in ascending order: " + list1); 
      Collections.reverse(list1); 
  
      System.out.println("list in dsending order: " + list1); 
   } 
} 

Это даст следующий результат —

list before sorting     : [5, 3, 1, 4, 2] 
list in ascending order : [1, 2, 3, 4, 5] 
list in dsending order  : [5, 4, 3, 2, 1] 

Сортировать список в порядке возрастания, используя Erlang

Следующая программа показывает, как сортировать список в порядке возрастания и убывания, используя Erlang, который является функциональным языком программирования.

-module(helloworld).  
-import(lists,[sort/1]).  
-export([start/0]).   

start() ->  
   List1 = [5,3,4,2,1],  
   io:fwrite("~p~n",[sort(List1)]), 

Это даст следующий результат —