I am trying to generate random sets of data in my current code. I have read samples of data on how to create random item selections but none will show me how to add multiple list of items to generate the random print lines for all of the items at once.

I have looked at references in random items from list. But most only show one item. I have looked at geeks for geeks in their Random sample using integers, but I need to generate more than just integers, also string selections from the items.

```
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ThreadLocalRandom;
import java.util.Random;

public class SmartCarDataGenerator
{

  public static void main(String[] args)
  {
/*
Author
System
Subsystem
Methodology
Driver behavior detection

GDi
Lpi
Variable 
Sensor data
Defenition

GDi_Speed
GDi_RPM
GDi_Ignitor_sensor
GDi_MAP_sensor
GDi_Front_oxygen_sensor
GDi_Injection_Time_Sensor_1
GDi_Fuel_rail_pressure_sensor
GDi_Knock_sensor_1
GDi_Knock_sensor_2
GDi_Knock_sensor_3
GDi_Knock_sensor_4
GDi_Speed

LPi_Speed
LPi_RPM
LPi_Ignitor_sensor
LPi_MAP_sensor
LPi_Front_oxygen_sensor
LPi_Injection_Time_Sensor_1
LPi_Fuel_rail_pressure_sensor
LPi_Knock_sensor_1
LPi_Knock_sensor_2
LPi_Knock_sensor_3
LPi_Knock_sensor_4
Lpi_Speed

N
Mean
SD
Min
Max

GDi_Variable
GDi_Coeffifient
GDi_pValue
GDi_Result

LPi_Variable
LPi_Coeffifient
LPi_pValue
LPi_Result

*/

    Random rand = new Random();

    List<String> author = new ArrayList<String>();
    author.add("Beatrice");
    author.add("Wang");
    author.add("Luo");
    author.add("Han");
    author.add("Cesar");
    author.add("Zhang");
    author.add("Hu");
    author.add("Lee");
    author.add("Chung");

    List<String> system = new ArrayList<String>();
    system.add("Engine");
    system.add("Battery");
    system.add("Steering");
    system.add("Brakes");
    system.add("Suspension");
    system.add("Muffler");
    system.add("FanRadiator");
    system.add("Radiator");
    system.add("AirConditinor");
    system.add("SoundSystem");

    List<String> subsystem = new ArrayList<String>();
    subsystem.add("OBD");
    subsystem.add("CVDP");
    subsystem.add("BGA");
    subsystem.add("EPSG");
    subsystem.add("LithiumBattery");
    subsystem.add("ElectricPowerSteering");
    subsystem.add("AntiLockBrakes");
    subsystem.add("suspension");

    List<String> methodology = new ArrayList<String>();
    methodology.add("DataDriven");
    methodology.add("ModelBased");

    List<String> driverBehaviorDetection = new ArrayList<String>();
    driverBehaviorDetection.add("Fatigue");
    driverBehaviorDetection.add("Drowsiness");
    driverBehaviorDetection.add("Distraction");
    driverBehaviorDetection.add("AccelerationHabit");
    driverBehaviorDetection.add("Texting");
    driverBehaviorDetection.add("Mad");
    driverBehaviorDetection.add("Happy");
    driverBehaviorDetection.add("RoadRage");
    driverBehaviorDetection.add("MedicalCondition");

    List<String> variable_car_condition = new ArrayList<String>();
    variable_car_condition.add("Normal");
    variable_car_condition.add("Abnormal");

    int variable_driver_id = rand.nextInt(100000);

    List<String> speedMode = new ArrayList<String>();
    speedMode.add("Idling");
    speedMode.add("Driving");

  }

}

```

I would like to receive suggestions to how I would generate print lines that add everything of the List items I have using loop functions or a class that I call to pass 1000 of the entire Lists to generate data. I would also like to learn how to create a random selection that has more than one value from a list.