如何确定文本是否具有平衡分隔符?

我有这个问题, 编写一个函数来确定文本是否具有平衡分隔符。 有效分隔符对是(),[],{}和。 它们可能是嵌套的。 此外,确定文本分隔符’和’正确匹配。 我顺便在java编码.. 对于每个测试行,如果它具有平衡分隔符,则输出为“1”,否则为“0”。 下面的例子, 4 — 0 {123} — 1 {qweqwe{sdad} — 0 问题是,如何在java代码中编写,检查这对有效分隔符是否匹配? 对不起,我对分隔符知之甚少。 以下是我的代码.. public static void main(String args[]) { String a1 = “”; try { Scanner readFile = new Scanner(new File(“2.in.txt”)); while (readFile.hasNextLine()) { a1 = readFile.nextLine(); System.out.println(a1); if (a1.equals(“18”)) { System.out.println(“0”); } else { System.out.println(“1”); } } […]

当UserType表示单行中的对象集时。 如何使用类似标准查询Hibernate自定义UserType?

我们使用自定义Hibernate UserType将一组字符串存储在一行中。 当尝试使用类似标准查询此集合时,使用JPA CriteriaBuilder Hibernate会抛出IllegalArgumentException Parameter value String did not match expected type java.util.Set 这有解决方法吗? 这是我们正在使用的UserType: public class SetStringType implements UserType, LiteralType<Set> { final private static String SEPARATOR = “|”; final private static String SEPARATOR_REGEXP = “\\|”; @Override public int[] sqlTypes() { return new int[] { Types.VARCHAR }; } @Override public Object nullSafeGet(ResultSet rs, String[] […]

读取日志文件并在jTextArea中显示

我正在尝试读取动态更改的文件并在jTextArea中显示其内容。 我正在使用缓冲读卡器进行阅读。 我试图在控制台上显示内容,它工作正常,但不适用于jTextArea。 我正在做类似的事情 while(true) { line = br.readLine(); if(line == null) Thread.sleep(); else System.out.println(line); } 任何帮助,将不胜感激。 谢谢

JAX-WS,为什么LinkedHashMap集合收到的是空的?

我正在构建一个java Web服务,它接收LinkedHashMap作为参数。 LinkedHashMap集合在客户端插入了一些元素,但我在webservice中将其清空。

获得毫秒格式

我试图让这个字符串返回Minute:Second:Millisecond for MediaPlayer。 我找到了这段代码,但无法弄清楚如何使毫秒工作并将其放在2位小数。 我确信这对合适的人来说很简单! private String getTimeString(long millis) { StringBuffer buf = new StringBuffer(); int hours = (int) (millis / (1000*60*60)); int minutes = (int) (( millis % (1000*60*60) ) / (1000*60)); int seconds = (int) (( ( millis % (1000*60*60) ) % (1000*60) ) / 1000); buf .append(String.format(“%02d”, hours)) .append(“:”) .append(String.format(“%02d”, minutes)) .append(“:”) […]

用于形成和解析soap消息的Java库

我尝试过Axis 2.它试图从Seibel解析我的WSDL时死了。 我不需要任何需要容器(Metro)的东西。 我想要做的就是解析并形成SOAP消息。 我不希望他们代表我发送消息。 我已经在使用HttpClient了,我很高兴。

多对多无效对象名称

我在代码中的Employee-Project之间创建了多对多关系,但是当我想使用它时抛出此exception: com.microsoft.sqlserver.jdbc.SQLServerException:无效的对象名称’employee_project’。 我试过了,但是我没有成功找到这个exception的根本原因。 所以,请帮帮我。 以下是Employee和Project的POJO以及抛出此exception的代码 员工pojo: @Entity @Table(name = “Employee”) public class Employee { @Id @GeneratedValue(strategy = GenerationType.AUTO) @Column(name = “EMPLOYEE_ID_PK”) private int employeeIdPk; @ManyToMany(fetch = FetchType.LAZY, cascade = { CascadeType.PERSIST, CascadeType.MERGE }, mappedBy = “workers”) private Collection projects = new HashSet(0); } 项目pojo: @Entity @Table(name = “Project”) public class Project { @Id @GeneratedValue(strategy = […]

尝试同时读取时,Java滚动文件创建失败

我正在使用java.util日志记录类来创建滚动文件appender。 我想创建一个日志阅读器,当数据写入它们时从这些日志中读取。 滚动日志appender代码本身可以正常工作。 但是一旦我启动阅读器线程,就不会创建新文件,即如果将滚动日志appender设置为使用5个文件,它将创建1og.0,log.1,log.2等等但是如果阅读器线程启动则它将仅创建log.0没有创建其他文件。 我在java logging和log4j中都注意到了这一点。 我正在使用nio来读取日志阅读器。 所以我的疑问是,在同一个文件上创建另一个FileChannel会产生一些问题吗? 或者我错过了一些导致问题的基本nio内容。 这是代码.. public class Test { private static final long initialTime = System.currentTimeMillis(); private static Logger logger = Logger.getLogger(Test.class.getName()); public static void main(String[] args) { logger.setLevel(Level.INFO); try { BufferedReader reader = new BufferedReader( new InputStreamReader( new FileInputStream( new File(System.getProperty(“user.dir”)+File.separator+”input.dat”)))); FileHandler handler = new FileHandler(“log/test.log”, 1024, 5, true); […]

将项目导入Netbeans

我的客户刚刚把我的基础项目发给了我用于开发目的。 我想他只是将项目文件夹压缩并发送给我。 现在,当我访问NetBeans时,“使用现有源代码的新项目”:首先,我看到“ 此项目已包含构建文件夹 ”的错误。 我从项目中删除了构建文件夹,然后我收到错误“ 此项目已包含netbeans项目 ”。 知道我错过了什么。 我习惯了Eclipse和Netbeans的新手。 客户发给我的项目结构是:

Jmockit:不能模拟net.android.Uri类的toString方法

IDE:Android Studio 2.2.2 | Jmockit:2.1 | Java:1.8.0_102-b14 我试图模拟类net.android.Uri的方法toString()。 这个类上的所有方法都可以模拟OK,但是toString()方法。 @Test public void method(@Mocked final Uri uri) throws Exception { new NonStrictExpectations() { { uri.getHost(); result = “sendViewLog”; uri.getAuthority(); result = “getAuthority”; uri.getEncodedFragment(); result = “getEncodedFragment”; uri.getPort(); result = 8080; uri.toString(); // <——- result = "helloWorld"; } }; sut.method(); } 结果:但是toString()返回null值,上面的所有方法都被模拟了。 你能给我一些解决方法来解决这个问题。 PS1:我意识到当我将鼠标hover在Expectations块内的toString方法时。 它显示此警告消息: 报告对忽略该调用结果的特定方法的任何调用。 检查使用org.jetbrains.annotations.Contract(pure […]