我正在尝试synchronize
一个对象,因此我可以添加wait()
和notify()
。
我一直在研究基于synchronization
两个Objects
synchronization
的问题和文章,但他们似乎没有帮助我。
每篇文章都给了我一个不同的表示(并且它有很多内容),所以我想如果我只是提交代码以便你们可以决定如何应用String message;
TextField userText = new TextField();
message = userText.getText();
String[] splitMess;
if(message.contains(">>")){
splitMess = message.split(">>");
/*What I want as the notifier*/
makeBranch("=s=" + splitMess[1] + "=s=", getTheBranch(splitMess[0], root));
makeBranch(splitMess[1], root).setExpanded(false);
makeBranch("=s=" + splitMess[0] + "=s=", getTheBranch(splitMess[1], root)).setExpanded(false);
String newTing = splitTwo(getTheBranch(splitMess[0], root).getChildren().toString(), "TreeItem [ value:", "]");
String theNew = newTing.replace("=s=", "");
String newest = splitTwo(theNew, "[", ",");
String newest2 = newest.replace("\n", "");
String[] arrayTing = newest2.split(" ");
for(int d = 0; d<arrayTing.length; d++){
/*What I want to be waiting*/
makeBranch("=s=" + splitMess[1] + "=s=", getTheBranch(arrayTing[d], root));
}
}
那么会更好。 / p>
makeBranch("=s=" + splitMess[1] + "=s=", getTheBranch(arrayTing[d], root));
我意识到,如果makeBranch("=s=" + splitMess[1] + "=s=", getTheBranch(splitMess[0], root));
不等待makeBranch()
,我会收到错误。
以下是getTheBranch()
,splitTwo()
和public TreeItem<String> makeBranch(String title, TreeItem<String> parent){
TreeItem<String> item = new TreeItem<>(title);
item.setExpanded(true);
parent.getChildren().add(item);
return item;
}
public TreeItem<String> getTheBranch(String value, TreeItem<String> parent){
Optional<TreeItem<String>> nodeOptional = parent.getChildren().stream().filter((child) ->
(child).getValue().equals(value)
).findFirst();
if(nodeOptional.isPresent()){
TreeItem<String> item = nodeOptional.get();
return item;
}
else{
return null;
}
}
public String splitTwo(String theMain, String split1, String split2){
String oldString = theMain.replace(split1, "");
String newString = oldString.replace(split2, "");
return newString;
}
方法:
=IF(COUNT(F16:G16), SUM(G16, INDEX(H$1:H15, MATCH(1e99, H$1:H15)), -F16), "")