Увидел данный вариант решения задачи, разобрался что да как, но 30 строчку не могу понять. Объясните что там делается.
package com.javarush.task.task07.task0708;

package com.javarush.task.task07.task0708;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

/*
Самая длинная строка
*/

public class Solution {
    private static List<String> strings;

    public static void main(String[] args) throws Exception {
        strings = new ArrayList<>();

        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

        int a = 0;

        for (int i = 0; i < 5; i++) {
            strings.add(reader.readLine());
            a = (strings.get(i).length() > a) ? strings.get(i).length() : a;
        }

        for (String s : strings){
            if (s.length() == a) System.out.println(s);//напишите тут ваш код
        }

    }
}