【发布时间】:2022-10-17 04:39:10
【问题描述】:
我的要求是我需要将从 Scanner 的 nextLine() 方法获取的字符串输入转换为字符串数组:
我的代码:
Scanner sc= new Scanner(System.in);
String myString = sc.nextLine();
当我在控制台中输入以下内容时,上面的代码工作正常:新字符串[]{"A:22","D:3","C:4","A:-22"}
但我的挑战是读取扫描仪输入并将其分配给字符串数组,如下所示:
String[] consoleInput=sc.nextLine();
我有一个不兼容的类型错误,这是正常的,因为 String 无法转换为 String 数组。有没有办法在上面的行中将 sc.nextLine() 转换为 String 数组?
【问题讨论】:
-
您对数组的期望到底是什么?
-
我期待"A:22","D:3","C:4","A:-22"从输入字符串新字符串[]{"A:22","D:3","C:4","A:-22"}
-
基本上是
myString.replaceFirst("^\\Qnew String[]{\"\\E","").replaceFirst("\\Q\"}\\E$","").split("\",\"", -1)? (假设引号不应包含在字符串中)