こんにちは皆さん、私はこのコードに問題があります:
//Class FileManip
public class FileManip{
private HTTPRequest<List<String>> addMe = new HTTPRequest<List<String>>();
public void openFile(){
try{
BufferedReader buff = new BufferedReader(new FileReader("Saturday.txt"));
try{
Double ctr = 0.0;
String readHTTPURIFromTxt = buff.readLine();
while (readHTTPURIFromTxt!=null){
if (!readHTTPURIFromTxt.isEmpty()){
addMe.putListHTTPCharTable(parseHTTPReqToCharbyChar(readHTTPURIFromTxt), ctr);
ctr++;
}
readHTTPURIFromTxt = buff.readLine();
}
}
finally{
buff.close();
}
}
catch(FileNotFoundException e){
System.out.println("File not found"+e);
}
catch(IOException e){
System.out.println("oist exception");
}
}
public List<String> parseHTTPReqToCharbyChar(String getHTTP){
List<String> parsingReq = new ArrayList<String>();
String convChar=null;
for (int x = 0; x<getHTTP.length(); x++){
convChar = Character.toString(getHTTP.charAt(x));
parsingReq.add(convChar);
}
return parsingReq;
}
}
//Class HTTPRequest
public class HTTPRequest<T> {
private LinkedHashMap<List<T>, Double> tableOfInitProbList = new LinkedHashMap<List<T>, Double>();
public HTTPRequest(){
}
public HTTPRequest(List<T> entry, Double value){
tableOfInitProbList.put(entry, value);
}
public void putListHTTPCharTable(List<T> uri, Double value){
tableOfInitProbList.put(uri, value);
}
}
問題はライン
addMe.putListHTTPCharTable(parseHTTPReqToCharbyChar(readHTTPURIFromTxt), ctr);
ifステートメント内のクラスfilemanip openfileメソッドにあります。2 つのパラメーター List < T > と Double を取るように putListHttpCharTable を作成しましたが、戻り値の型が List である引数 parseHTTPReqToCharbyChar(readHTTPURIFromTxt) を渡すと、コンパイル時エラーが発生します。それは読む
タイプ HTTPRequest> のメソッド putListHTTPCharTable(List>, Double) は、引数 (List, Double) には適用されません。
List < String > 戻り値の型を持つメソッドを渡しましたが、どういうわけか、コンパイラはそれを List < List < T > > または List < List < String > > として読み取ろうとしており、単に List < String > ではありません。とにかくこれを修正する方法はありますか?