我想从文本输入创建一个数组:
输入1:“汽车帽太阳狗椅”
输入由“空格”
分隔数组中的输出应该是数组中的位置。
数组列表中的输出:[0 1 2 3 4]
所以0 =车1 =帽子等
答案 0 :(得分:1)
我不知道你为什么在这里使用数组。您可以维护一个包含键值对的hashpmap,如下所示。
public static void main(String[] args) {
String input= "car hat sun dog chair";
String[] arr=input.split(" ");
for(int i=0;i<arr.length;i++){
Map<Integer, String> valueMap = new HashMap<Integer, String>();
System.out.print("================="+i+arr[i]);
valueMap.put(i, arr[i]);
}
}
输出0car ================= 1hat ================= 2sun ======== ========= 3dog ================= 4chair
答案 1 :(得分:1)
给你代码会适得其反。 以下是您可以遵循的想法:
问题:你有一个String需要表示为一个数组(为数组的每个元素标记它的某些部分)。 你应该问的第一件事是String是什么。来自java docs:
String str = "abc";
is equivalent to:
char data[] = {'a', 'b', 'c'};
String str = new String(data);
看看这里发生了什么,String'abc'实际上是一种从字符数组中获得的连接 - data[]
。因此,您可以将String视为具有表示的字符数组,这在眼睛上很容易。现在,您需要做的就是逐个提取这些字符并将它们整齐地放在一个数组中。有几种方法可以做到这一点。 String类为您提供了大量方便的方法,只需几步即可完成此操作(单步执行!)。
尝试一些事情,向我们展示您编写的代码,我们会帮助您加入。
答案 2 :(得分:0)
我想你需要以下代码。
String inpStr = "car hat sun dog chair";
String[] inpArr = inpStr.split(" ");
答案 3 :(得分:0)
这里是我们需要用空格分割字符串的代码
String inpStr = "car hat sun dog chair"; // request.getParameter("textName");
String[] inpArr = inpStr.split("\\s+"); // to split with " " we need to use regex for space \\s+
for (int j = 0; j < inpArr.length; j++) {
System.out.println(inpArr[j]);
}