Java ArrayList IndexOf – 查找对象索引

让我们说我上课了 public class Data{ public int k; public int l; public Data(int k, int l){ this.k = k; this.l = l; } public boolean equals(Date m){ if(this.k == mk && this.l = ml) return true; return false; } } 我向ArrayList添加了一些Data对象: ArrayList holder = new ArrayList; Data one = new Data(0,0); Data two = new Data(0,4); […]

Java:pre-postfix运算符优先级

关于Java中的运算符优先级,我有两个类似的问题。 第一: int X = 10; System.out.println(X++ * ++X * X++); //it prints 1440 根据Oracle教程 : postfix(expr ++,expr–)运算符的优先级高于prefix(++ expr, – expr) 所以,我想评估顺序: 1) first postfix operator: X++ 1.a) X++ “replaced” by 10 1.b) X incremented by one: 10+1=11 At this step it should look like: System.out.println(10 * ++X * X++), X = 11; 2) second […]

Java:如何处理两个进程试图修改同一个文件

可能重复: 如何使用java锁定文件(如果可能) 我有两个进程调用两个修改同一文本文件的Java程序。 我注意到文本文件的内容缺少数据。 我怀疑当一个java程序获取文本文件的写入流时,我认为它会阻止其他java程序修改它(比如当你打开文件时,你不能删除该文件)。 有没有办法解决除数据库之外的其他问题? (并不是说数据库解决方案不干净或优雅,只是我们在操作此文本文件时写了很多代码) 编辑 事实certificate,我犯了一个针对这个问题的错误。 我的文本文件中缺少数据的原因是, ProcessA :继续向文本文件添加数据行 ProcessB :在开头,将文本字段的所有行加载到List 。 然后它操纵该列表的包含。 最后, ProcessB将列表写回,替换文本文件的包含。 这项工作在顺序过程中很棒。 但是当一起运行时,如果ProcessA将数据添加到文件中,在ProcessB操作List ,那么当ProcessB写回List时,无论ProcessA刚添加什么,都将被覆盖。 所以我最初的想法是在ProcessB写回List之前,在文本文件和List之间同步数据。 因此,当我将List写回时,它将包含所有内容。 所以这是我的努力 public void synchronizeFile(){ try { File file = new File(“path/to/file/that/both/A/and/B/write/to”); FileChannel channel = new RandomAccessFile(file, “rw”).getChannel(); FileLock lock = channel.lock(); //Lock the file. Block until release the lock List tempList = […]

如何使用Jersey API从宁静的Web服务发送和接收JSON数据

@Path(“/hello”) public class Hello { @POST @Path(“{id}”) @Produces(MediaType.APPLICATION_JSON) @Consumes(MediaType.APPLICATION_JSON) public JSONObject sayPlainTextHello(@PathParam(“id”)JSONObject inputJsonObj) { String input = (String) inputJsonObj.get(“input”); String output=”The input you sent is :”+input; JSONObject outputJsonObj = new JSONObject(); outputJsonObj.put(“output”, output); return outputJsonObj; } } 这是我的webservice(我正在使用Jersey API)。 但我无法找到一种方法从java rest客户端调用此方法来发送和接收json数据。 我尝试了以下方式来编写客户端 ClientConfig config = new DefaultClientConfig(); Client client = Client.create(config); WebResource service = client.resource(getBaseURI()); […]

如何将模块声明注入JAR?

假设我有一些库lib.jar ,我没有源代码(或者它是用一些不熟悉模块的非Java语言编写的)。 lib.jar没有module-info.class ,我不想将它用作自动模块,所以我想将module-info.class注入其中。 我首先使用以下命令生成module-info.java : jdeps –generate-module-info . lib.jar 假设这产生了类似的东西: module lib { exports package1; exports package2; } 然后我尝试编译它但javac失败,因为包package1和package2不存在: > javac module-info.java module-info.java:4: error: package is empty or does not exist: package1 当然,我可以在其中创建带有虚拟类的目录package1和package2 ,但是有更好的方法吗?

获取无法使用java / selenium将元素集中在chrome和edge中

我在chrome中运行我的测试时遇到无法聚焦元素错误,并且FF中的边缘工作正常。 我已尝试过发布的决议但无济于事。 我不知道该怎么做。 希望有人可以提供帮助。 提前致谢。 driver.findElement(By.linkText(“Add”)).click(); List groups = new Select(driver.findElement(By.xpath(“/html/body/div[1]/section/div/article/form/fieldset/div[3]/div[2]/div/div/div[1]/select”))).getOptions(); groups.get(3).click(); JavascriptExecutor js = (JavascriptExecutor)driver; WebElement groupRole = driver.findElement(By.xpath(“/html/body/div[1]/section/div/article/form/fieldset/div[3]/div[2]/div/div/div[2]/label[2]”)); js.executeScript(“arguments[0].click();”, groupRole); driver.findElement(By.xpath(“/html/body/div[1]/section/div/article/form/fieldset/div[3]/div[2]/div/div/div[2]/label[2]”)).sendKeys(” “); // Check to see if the user should be made active and set active checkbox to on if value in file is “active” if (activeFlag.equals(“active”)) { driver.findElement(By.xpath(“/html/body/div[1]/section/div/article/form/fieldset/div[3]/div[1]/div[1]/div/div/input”)).sendKeys(” “); } // If […]

哪个面向Java的lexer解析器用于简单项目(ANTLR,DIY等)

我正在开发一个小型文本编辑器项目,并希望为几种语言添加基本语法高亮(Java,XML ……仅举几例)。 作为一种学习经历,我想添加一个流行或非流行的Java词法分析器。 你推荐什么项目。 Antlr可能是最知名的,但它似乎相当复杂和沉重。 以下是我所知道的选项。 ANTLR Ragel(是的,它可以生成用于处理输入的Java源代码) 自己动手(我想我可以编写一个简单的令牌解析器并突出显示源代码)。

如何运行PING命令并获取ping主机摘要?

嗨我需要使用Java代码执行PING命令并获取ping主机的摘要。 怎么用Java做?

Java:关闭选项卡或浏览器时为什么不会销毁http会话?

我有HttpSessionlistener的以下实现 public class SessionListener implements HttpSessionAttributeListener, HttpSessionListener { public void attributeAdded(HttpSessionBindingEvent event) { … } public void attributeRemoved(HttpSessionBindingEvent event) { … } public void attributeReplaced(HttpSessionBindingEvent event) { } //HttpSesion creation & destruction public void sessionCreated(HttpSessionEvent event) { HttpSession session = event.getSession(); //log created time } public void sessionDestroyed(HttpSessionEvent event) { HttpSession session = event.getSession(); long […]

使用Javamail API将邮件从yahoo id发送到其他电子邮件ID

我无法使用Java mail API从我的yahoo id发送电子邮件。 我尝试了谷歌的不同选项,但都失败了。 请查看下面的代码,如果我遗漏了某些内容,请告诉我。 在我看来, 雅虎没有提供发送邮件的免费服务,但我不确定。 请提供您的想法。 import javax.mail.*; import javax.mail.internet.*; import java.util.Properties; public class MailExample { private static final String SMTP_HOST_NAME = “smtp.mail.yahoo.com”; private static final int SMTP_HOST_PORT = 587;//465,587,25 private static final String SMTP_AUTH_USER = “dummyrls@yahoo.com”; private static final String SMTP_AUTH_PWD = “my password”; public static void main(String[] args) throws Exception{ […]