我正在使用扫描仪来获取输入,并希望将其拆分为块.我希望它使用全字分隔符将其拆分.所以现在我有:
Scanner scanner = new Scanner("1 imported bottle of perfume at 27.99");
scanner.useDelimiter("\\sdelimitOne\\s");
Run Code Online (Sandbox Code Playgroud)
所以用输入"word word delimitOne word word delimitTwo word word"得到输出:
word word
word word delimitTwo word word
Run Code Online (Sandbox Code Playgroud)
我希望
scanner.useDelimiter("\\sdelimitOne\\s\\sdelimitTwo\\s");
Run Code Online (Sandbox Code Playgroud)
可能会奏效,但不是.
我如何实现以下输出:
word word
word word
word word
Run Code Online (Sandbox Code Playgroud)
?
我根据NodeEntity的Enum属性查询问题.
有问题的NodeEntity定义如下:
@NodeEntity(label = "Entity")
public class MyEntity {
@GraphId
private Long internalId;
....
private State state;
@Transient
public enum State {
STATEONE, STATETWO, STATETHREE
}
....
Run Code Online (Sandbox Code Playgroud)
它保存没有问题,状态Enum表示完美,我可以使用其他属性(字符串)查询完全没有问题.但问题是存储库中的以下查询:
@Query("MATCH (entity:Entity {state:{0}})" +
"RETURN entity")
List<MyEntity> findByState(MyEntity.State state)
Run Code Online (Sandbox Code Playgroud)
即查找具有给定状态的所有实体.
没有例外,但是使用它只会返回0个实体的列表.
我已经尝试了各种各样的变体,例如使用WHERE子句,没有运气.
实体持久存在,在同一测试中使用findAll()返回预期的实体列表,其状态与我期望的完全一致.
有什么想法吗?