如何设置一个等于存储console.next();的变量的数组?

时间:2016-01-20 04:20:52

标签: java

 String typed=console.next();
 String[] arrayNum = new String[0];
 arrayNum=typed;

我该怎么办最后一行?我一直收到错误"无法从String转换为[] String"。我想用从控制台输入的字符填充一个数组。

2 个答案:

答案 0 :(得分:1)

我看到你还不了解数组。

typeOfArray [] arrayName = new typeOfArray [numberOfElements];

您可以在此处阅读更多内容:http://www.tutorialspoint.com/java/java_arrays.htm

例如:

  1. String[] arrayString = new String[10]; - 10个具有String类型的元素。
  2. int[] arrayInt = new int[2]; - 2个具有整数类型的元素。 等等。
  3. 还有ArrayList:

    http://www.tutorialspoint.com//java/util/java_util_arraylist.htm

    基本上,数组列表就像一个数组。默认情况下,它将以10个元素开头,如果继续推送更多数据,则数组列表将自动增加10个。

      

    ArrayList newArray = new ArrayList(1000);

    这是一个包含1000个元素的ArrayList的示例。

    要推送数据,请使用add() -

      

    newArray.add(“A String”);

    要获取数据,请使用get() -

      

    newArray.get(0);

    - 0是存储数据的索引号(此结果将返回“A String”)。

    更多示例,请阅读上面的链接。

答案 1 :(得分:0)

Java是强类型语言,这意味着一旦将变量声明为特定类型,就只能将其用作定义的类型。 在您的情况下,您定义

  

String typed = console.next();

变量typed保存console.text()返回的数据,的类型为String ,所以这一行非常好。

接下来定义新变量

  

String [] arrayNum = new String [0];

变量arrayNum 的类型为String [] ,这是java编译器完全不同的数据类型。 因此,当您尝试在String []中存储String时,会出现错误,每两种不同的数据都会出现这种情况。

一个解决方案,如果您确实需要控制台行作为数组使用

  

String.toCharArray();

喜欢这个

String typed=console.next(); char[] arrayNum = typed.toCharArray(); String实际上是一个char [](字符数组),但是String类作为这个数组的包装器,并提供了一些非常有用的方法来操作它。 所以现在你的arrayNum变量将你输入的字符保存为符号数组。

我的建议是在这种情况下不使用数组,因为String类在大多数情况下都能正常工作。