Loli lambda
Loli lambda
Explore posts from servers
LLJLes Laboratoires Java
Created by Loli lambda on 7/29/2024 in #aide-avancé
pourquoi la variable change?
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class Suggestion {

class Mom{
Map<String,Mom> data= new HashMap<>();
}

Mom tree = new Mom();

public void input(String s){
System.out.println("nnn : "+tree.data.keySet());
String[] mots = s.split(" ");
Mom current= tree;
for (String mot: mots){
current.data.putIfAbsent(mot,new Mom());
current = current.data.get(mot);
}
print();
}

public void print() {
System.out.println("bbb : "+tree.data.keySet());
printHelper(tree, 0);
}

private void printHelper(Mom node, int depth) {
for (Map.Entry<String, Mom> entry : node.data.entrySet()) {
for (int i = 0; i < depth; i++) {
System.out.print(" ");
}
System.out.println(entry.getKey());
printHelper(entry.getValue(), depth + 1);
}
}

public List<String> get(String s) {
System.out.println("aaaaaaaaaaaaaaaaa "+s);
Mom current = tree;
System.out.println("vvvvvvv : "+tree.data.keySet());
for (String str : s.split(" ")) {
System.out.println(str+" : " +current.data.keySet());
if (!current.data.containsKey(str)) {
System.out.println(" : done");
return new ArrayList<>();
} else {
System.out.println(" : forward");
current = current.data.get(str);
}
}
return new ArrayList<>(current.data.keySet());
}
}
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class Suggestion {

class Mom{
Map<String,Mom> data= new HashMap<>();
}

Mom tree = new Mom();

public void input(String s){
System.out.println("nnn : "+tree.data.keySet());
String[] mots = s.split(" ");
Mom current= tree;
for (String mot: mots){
current.data.putIfAbsent(mot,new Mom());
current = current.data.get(mot);
}
print();
}

public void print() {
System.out.println("bbb : "+tree.data.keySet());
printHelper(tree, 0);
}

private void printHelper(Mom node, int depth) {
for (Map.Entry<String, Mom> entry : node.data.entrySet()) {
for (int i = 0; i < depth; i++) {
System.out.print(" ");
}
System.out.println(entry.getKey());
printHelper(entry.getValue(), depth + 1);
}
}

public List<String> get(String s) {
System.out.println("aaaaaaaaaaaaaaaaa "+s);
Mom current = tree;
System.out.println("vvvvvvv : "+tree.data.keySet());
for (String str : s.split(" ")) {
System.out.println(str+" : " +current.data.keySet());
if (!current.data.containsKey(str)) {
System.out.println(" : done");
return new ArrayList<>();
} else {
System.out.println(" : forward");
current = current.data.get(str);
}
}
return new ArrayList<>(current.data.keySet());
}
}
je fait un arbre de possibilité mais quand j'utilise
Suggestion sug = new Suggestion();
sug.input("feur baka feur");
List<String> j = sug.get("feur baka");
Bukkit.broadcastMessage(j+"");
Suggestion sug = new Suggestion();
sug.input("feur baka feur");
List<String> j = sug.get("feur baka");
Bukkit.broadcastMessage(j+"");
vvvvvvv : [] feur : [] : done [] nnn : [feur] bbb : [feur] vvvvvvv : []
pourquoi ça efface dans get()
6 replies