Questo è davvero un problema strano, non ho mai incontrato qualcosa del genere. Quanto segue è una classe di supporto che ho dichiarato all'interno di una classe più grande. Funziona perfettamente così com'è:Errore di mancata corrispondenza di tipo tra java.lang.String e String
private static class Tree<String> {
private Node<String> root;
public Tree(String rootData) {
root = new Node<String>();
root.data = rootData;
root.children = new ArrayList<Node<String>>();
}
private static class Node<String> {
String data;
Node<String> parent;
ArrayList<Node<String>> children;
}
}
Tuttavia, facendo confusione ho scoperto un problema di confusione. Sostituendo questa linea:
root.data = rootData;
con:
root.data = "some string literal";
ottengo questo errore:
Type mismatch: cannot convert from java.lang.String to String
Ho provato alcune assegnazioni letterali stringa in altre classi e sembra funzionare perfettamente bene. Ho recentemente aggiornato a Java 1.7.0_15 e recentemente scaricato e installato Eclipse 4.2. Sospetto che ci possa essere una certa confusione nel percorso di costruzione o qualcosa del genere. utilizzando Ubuntu 12.04
Qualsiasi aiuto sarebbe molto apprezzato! Ho cercato e cercato e non ho trovato nulla di simile a questo problema.
Questo è davvero interessante. Non ho mai incontrato nulla di simile prima. –