将用户输入String存储到数组中

时间:2015-04-11 17:33:47

标签: java java.util.scanner user-input

用户输入数组。

E.g。

    private void addVideo()
{
    Scanner in = new Scanner( System.in );
    String message = "Video";
    System.out.print("Enter Video Name: ");
    return in.nextLine();
}

在课堂上:

    public static String nextLine()
{   
    return in.nextLine(); 
}

我有编译错误'不兼容的类型:意外的返回值。' 问题是什么?解释将不胜感激。

谢谢!

如何将输入的视频名称分配到数组中?例如第一个视频名称为id数组(id = 1)第二个是id = 2,依此类推?

3 个答案:

答案 0 :(得分:2)

private String addVideo() {
        Scanner in = new Scanner(System.in);
        String message = "Video";
        System.out.print("Enter Video Name: ");
        return in.nextLine();
    }

in.nextLine()返回一个String值,因此你必须使用String not void

答案 1 :(得分:1)

如果您想将视频名称存储到数组中,您可以使用Nikolai Hristov概述的方法,然后将每个实例添加到这样的数组中

String[] videos = new String[10];
videos[0] = addVideo();
videos[1] = addVideo(); 

每次调用addVideo()都会提示用户输入视频名称,然后将字符串返回到数组的该位置。

答案 2 :(得分:1)

您已使用返回类型void定义了一个方法,但在方法中使用了return语句。

至于如何做,尝试这样的事情:

List<String> list = new ArrayList<String>();

public String addVideo() {
    Scanner in = new Scanner(System.in);
    String message = "Video";
    System.out.println("Enter Video Name: ");
    String input = in.nextLine();
    list.add(input);
    return input;
}

每次调用addVideo时,您都会在列表中添加一个视频。