草庐IT

java - 在 Java 中解析 YYYYMMdd 日期的最快方法

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭10年前。解析YYYYMMdd日期时,例如2012年4月5日的20120405,最快的方法是什么?intyear=Integer.parseInt(dateString.substring(0,4));intmonth=Integer.parseInt(dateString.substring(4,6));intday=Integer.parseInt(dateString.substring(6));对

java - 检查一个整数以查看它是否包含零

给定一个整数,如何使用Java检查它是否包含0?1=Good2=Good...9=Good10=BAD!101=BAD!1026=BAD!1111=Good如何做到这一点? 最佳答案 你的意思是十进制表示是否包含0?绝对最简单的方法是:if(String.valueOf(x).contains("0"))不要忘记,数字不会“固有地”包含或不包含0(当然,零本身除外)——它取决于基数。所以十进制的“10”是十六进制的“A”,十六进制的“10”是十进制的“16”……在这两种情况下,结果都会改变。可能有更有效的方法来测试整数的十进制表示中

java - 如何使用antlr4访客

我是antlr的初学者。我试图在我的代码中使用访问者并按照网上的说明进行操作。但是,我发现访问者根本没有进入我创建的方法。谁能告诉我我做错了什么?这是我的访客:importjava.util.LinkedList;importorg.antlr.v4.runtime.misc.NotNull;/**Tochangethistemplate,chooseTools|Templates*andopenthetemplateintheeditor.*//****@authorSherwood*/publicclassExtractMicroBaseVisitorextendsMicroBas

java - DateTimeFormatter 中的通配符

我需要将字符串解析为LocalDate。该字符串在正则表达式中看起来像31.*032016(即.*表示天数后可能有0个或多个未知字符)。示例输入/输出:31xy032016==>2016-03-31我希望在DateTimeFormatter文档中找到一个通配符语法以允许这样的模式:LocalDate.parse("31xy032016",DateTimeFormatter.ofPattern("dd[.*]MMyyyy"));但是我找不到任何东西。是否有一种简单的方法来使用DateTimeFormatter来表达可选的未知字符?ps:我显然可以在解析之前修改字符串,但这不是我想要的。

java - Java 编译器如何解析类型转换?

一个简单的表达式如(x)-y根据x是否是类型名称而被不同地解释。如果x不是类型名称,(x)-y只是从x中减去y。但是,如果x是类型名称,(x)-y计算y的负数并将结果值转换为类型x。在典型的C或C++编译器中,x是否是类型的问题是可以回答的,因为解析器在处理typedef或struct声明后立即将此类信息传达给词法分析器。(我认为这种要求违反级别是C设计中最糟糕的部分。)但在Java中,x可能要到源代码的后面才定义。Java编译器如何消除这种表达式的歧义?很明显,Java编译器需要多次通过,因为Java不需要使用前声明。但这似乎意味着第一遍必须在解析表达式上做一个非常草率的工作,然后在

java - ANTLR(或替代): decoupling parsing from evaluation

我有一个相对简单的DSL,我希望它比一堆手动编码的java.util.regex.Pattern语句+解析逻辑更可靠地处理。引用最多的工具似乎是ANTLR。我对它不熟悉,愿意尝试一下。但是,当我查看示例时(例如ANTLRexpressionevaluatorexample或MartinFowler的HelloAntlr或thisotherQonstackoverflow),我有点怀疑。这样做的原因是语法文件看起来像是语法定义的大杂烩,其中散布着本质上是命令式的实现语言(例如Java)的片段。我真正喜欢的是将解析器的命令式/求值部分分开。有没有一种方法可以使用ANTLR(或其他工具)来定

java - csv 解析器读取 header

我正在研究csv解析器,我想分别读取标题和csv文件的其余部分。这是我读取csv的代码。当前代码读取csv文件中的所有内容,但我需要单独读取标题。请帮我解决这个问题。publicclasscsv{privatevoidcsvRead(Filefile){try{BufferedReaderbr=newBufferedReader(newFileReader(file));StringstrLine="";StringTokenizerst=null;Filecfile=newFile("csv.txt");BufferedWriterwriter=newBufferedWriter(n

java - 正则表达式的替代品

我有一组字符串,其中嵌入了数字。它们看起来像/cal/long/3/4/145:999或/pa/metrics/CosmicRay/24:4:bgp:EnergyKurtosis。我想要一个表达式解析器,它是易于使用。给出一些例子,某人应该能够形成一个新的表达式。我希望最终用户能够形成新的表达式来查询这组字符串。一些潜在用户是软件工程师,其他是测试人员,还有一些是科学家。允许对数字进行限制。类似'/cal/long/3/4/143:#>100&支持'|'和。所以表达式'/cal/(long|short)/3/4/'将匹配'/cal/long/3/4/1:2'以及'/cal/short/

java - 如何将任意 JSON 转换为 Java 中可用的结构

我正在尝试使用gson将返回的JSON转换成某种类型的数据结构,以便我可以提取有用的数据。例如:http://search.twitter.com/search.json?q=test&rpp=1返回:{"completed_in":0.028,"max_id":196386333906837504,"max_id_str":"196386333906837504","next_page":"?page=2&max_id=196386333906837504&q=test&rpp=1","page":1,"query":"test","refresh_url":"?since_id=1

java - XML 数据到 PostgreSQL 数据库

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭3年前。社区在15天前审查了是否重新打开此问题,然后将其关闭:原始关闭原因未解决Improvethisquestion将XML数据(我从网页获取的数据)插入PostgreSQL数据库的最佳方式是什么?我正在使用Java,需要一些帮助才能找到将这些数据读入数据库的好方法。