+ 1
how to save strings that user input into an array? JAVA
https://code.sololearn.com/cnpMa2W2sCai This is my code so far I asked here before but I still don't get how to save the string into an array. for example, the user puts 3 numbers of characters and input names and role, origin 3 times, 5 times or 10 times. now it displays the string that I already input... Need help you guys I really appreciate any help!!!!
5 Answers
+ 3
try this
		legendary[] leg = new legendary[numbers];
		int i = 0;
		while (i<numbers)
		{
		    legendary temp_legend = new legendary();
		    temp_legend.set_first_name();
		    temp_legend.set_last_name();
		    temp_legend.set_nickname();
		    temp_legend.set_roles();
		    temp_legend.set_origins();   
		    leg[i]=temp_legend;
		    i++;
		}
+ 1
thank you but still doesn't work
it gets error .set_first_name();
.set_last_name();
.set_nickname();
.set_roles();
.set_origins();   
these parts..
and on   for(int y = 0; y < numbers; y++){
           leg[y] = temp_legend;
        }
this part temp_legend;
+ 1
I agree with @serena your code is kind of spaghetti , now i am after lunch so i could suggest  you this option:
import java.util.Scanner;
public class main_source 
{
	public static void main(String[] args) 
	{
		Scanner scan = new Scanner(System.in);
		int numbers = 0;
		System.out.println("Enter the number of characters you want to put: ");
		numbers = scan.nextInt();
		legendary[] legArr = new legendary[numbers];
		int i = 0;
		String firstName = "";
	        String lastName = "";
	        String nickName = "";
	        String role = "";
	        String origin = "";
		while (i<numbers)
		{
	    	    System.out.print("Enter first name: ");
		    firstName = scan.nextLine();
		    System.out.print("Enter last name: ");
		    lastName = scan.nextLine();
		    System.out.print("Enter nickname: ");
		    nickName = scan.nextLine();
		    System.out.print("Enter role: ");
		    role = scan.nextLine();
		    System.out.print("Enter origin: ");
		    origin = scan.nextLine();
            legendary leg = new legendary(firstName,lastName,nickName,role,origin)	   
		    legArr[i]=leg;
		    i++;
		}
		//display
		for(legendary leg : legArr)
		{
			leg.display_info();
		}
	}
}
//different class
import java.util.Scanner;
public class legendary 
{
    private String firstName;
	private String lastName;
	private String nickName;
	private String role;
	private String origin;
	//Constructor
	public legendary(String firstName,String lastName , String nickName , String role , String origin)
    {
        this.firstName=firstName;
        this.lastName=lastName;
        this.nickName=nickName;
        this.role=role;
        this.origin=origin;
    }
	public void display_info()
	{
		//This will display first, last, nickname, role, and origin
		System.out.println("Name: " + firstName + " " + lastName);
		System.out.println("Nickname: " + nickName);
		System.out.println("Role: " + role);
		System.out.println("Origin: " + origin);
		System.out.print("\n");
	}
+ 1
Thanks a lot guys!
you guys so helpful
have a  good day!





