类型不匹配:从String转换为List <string>

时间:2015-11-03 11:06:44

标签: java

我想到了我的学校课程的算法,但我猜想还有一些基础知识的难度......

这是我的问题代码:

import java.io.*;
import java.util.*;

public class Main {
  public static void main(String[] args) throws FileNotFoundException {
    String allWords = System.getProperty("user.home") + "/allwords.txt";
    Anagrams an = new Anagrams(allWords);
    for(List<String> wlist : an.getSortedByAnQty()) {
      //[..............];
    }
    }
}

public class Anagrams {

    List<String> myList = new ArrayList<String>();

    public List<String> getSortedByAnQty() {
        myList.add("aaa");
        return myList;
    }
}

我得到&#34;类型不匹配:无法从元素类型String转换为List&#34; 应该如何初始化getSortedByAnQty()?

2 个答案:

答案 0 :(得分:9)

an.getSortedByAnQty()返回List<String>。当您遍历该List时,您将获得单独的字符串,因此增强的for循环应该具有String变量:

for(String str : an.getSortedByAnQty()) {
  //[..............];
}

如果main方法保持不变,则应更改getSortedByAnQty以返回List<List<String>>

答案 1 :(得分:0)

char[] cArray = "MYString".toCharArray();
convert the string to an array as above and then iterate over the character array to form a list of String as below

List<String> list = new ArrayList<String>(cArray.length);

for(char c : cArray){
    list.add(String.valueOf(c));
}