尝试将数据输入数组时不兼容的类型
Posted
技术标签:
【中文标题】尝试将数据输入数组时不兼容的类型【英文标题】:Incompatible types when trying to input data into an array 【发布时间】:2014-03-31 17:36:13 【问题描述】:我在以交互方式将数据输入数组时遇到问题。我正在尝试使用 nextLine 方法将一组 12 个名称添加到数组中,但是当我在第 12 行末尾编译时,它给了我错误“不兼容的类型”。
public class nextLineArray
public static void main(String[] args)
Scanner input = new Scanner(System.in);
char names[] = new char[12];
System.out.println("Enter the 12 names: ");
for(int i = 0; i < 12; i++)
names[i] = input.nextLine();
System.out.println(names);
【问题讨论】:
input.nextLine()
返回什么?你的 names
数组可以包含什么?
你真的想用单个字符来表示名字吗?我想你希望你的数组是 String 类型,而不是 char。
【参考方案1】:
这是因为 Scanner.nextLine() 返回的是字符串,而不是字符
尝试改变
char names[]=new char[12];
到
String names[] = new String[12];
【讨论】:
【参考方案2】:为什么使用 Char 来存储名称?请改用字符串。
而且 nextLine() 返回一个字符串而不是一个字符。所以错误。
仅供参考...如果您不希望输入为空或为空,您甚至可以使用 next() 从控制台获取输入。 nextLine() 甚至将一个空字符串作为输入。尝试下一个()
【讨论】:
以上是关于尝试将数据输入数组时不兼容的类型的主要内容,如果未能解决你的问题,请参考以下文章