我目前正在为课堂编写一个编码项目,在这个项目中,我们必须使用逗号分隔的列表,其中包含2-10个字符(仅为字母),并在与给定的字典文本文件交叉检查后生成所有可能的单词。
我遇到的问题是,尽管我可以拆分列表并创建一个数组,但我知道使用ArrayList更有用,而这正是我遇到问题的地方。
Scanner input = new Scanner(System.in);
String letters = input.nextLine();
input.close();
ArrayList<Letters> Letter = new ArrayList<Letters>();
letters.split(",");
Letter.add();我不确定我应该在add函数中放什么,因为我显然不想把所有的字符作为ArrayList的一个索引。我在想,也许我应该把字符分割成单独的字符串对象,但我不知道如何做到这一点。有些事情让我想到从我的入门类中解析,但仍然有困难。
提前感谢您的批评和帮助。
发布于 2014-09-19 17:47:37
当您使用拆分函数时,您的字符串将转换为一个类型为String的数组。
字符串是一组字符序列,在Java编程中得到了广泛的应用。在Java编程语言中,字符串是对象.
源和读取有关字符串类型的信息。
,例如
String[] splitString = string.split(",");以及你在加法中所放的内容
您可以使用for循环来遍历拆分的字符串数组,并将每个元素放在数组列表中,如下所示
for(int i=0; i< splitString.legth; i++)
Letter.add(splitString[i]); 增加的意思是:
公共布尔值 add( e )将指定的元素附加到列表的末尾。
备注:在使用每个内容时,String数组是一个由add函数使用的元素。
备注:字符串是对象,因此不需要转换为对象。
示例:
String s = "a,b,c"; <---- String is object no need to convert
String[] sp = s.split(",");<---- Array of String is object no need to convert
List<String> l = new ArrayList<>();
for (int i = 0; i < sp.length; i++) {
l.add(sp[i]);
}
for (int i = 0; i < l.size(); i++) {
System.out.print(" " + l.get(i));
}产出:
a b c发布于 2014-09-19 17:52:45
不确定信函类做什么,但是拆分字符串并将每个字母放在列表中,您可以这样做:
String s = "a,b,c,d,e,g,h";
List<String> list = Arrays.asList(s.split(","));
System.out.println(list);发布于 2014-09-19 17:58:06
您可以使用Arrays从拆分创建一个新列表。我不知道您的“Letters”类做了什么,但是可以用逗号分隔符拆分,如下所示:
Scanner input = new Scanner(System.in);
String letters = input.nextLine();
input.close();
List<String> Letter = Arrays.asList(letters.split(","));在Java8中,使用流并假设它们是可访问的Letters(final String s)构造函数:
Scanner input = new Scanner(System.in);
String letters = input.nextLine();
input.close();
List<Letters> letter = Arrays.stream(letters.split(",")).map(Letters::new).collect(Collectors.toList());https://stackoverflow.com/questions/25939514
复制相似问题