草庐IT

localized_string

全部标签

java - JDK-9 不允许我使用字符串 : "java.lang.String is ambiguous"?

一周前,我的每个项目都正常工作,但是当我将Eclipse更新到Oxygen版本并安装JDK-9时,事情就变得奇怪了。当我尝试使用字符串时,一段时间后(更像是每次我保存项目时),编译器会针对我项目中的每个字符串向我抛出一个错误。字符串类型被识别为有歧义的类"Thetypejava.lang.Stringisambiguous"所以我尝试导入java.lang.String看看它是否修复了错误:导入后"Thepackagejava.langisaccessiblefrommorethanonemodule:java.base,java.base"惊喜!?它不会:(我尝试在Google和SO

java - 在 Java 中隐藏一个 "local"类型参数

假设我正在使用一个带有通用类型参数的接口(interface)interfaceFoo{TgetOne();voiduseOne(Tt);}目的是类型T是抽象的:它对Foo的实现强制执行类型约束,但客户端代码并不关心到底是什么T是。这在泛型方法的上下文中没有问题:publicvoiddoStuff(Foofoo){Tt=foo.getOne();/*dostuff*/foo.useOne(t);}但假设我想分解doStuff的工作,将一些状态保存在类Bar中。在这种情况下,我似乎需要将Foo的类型参数添加到Bar。publicclassBar{privateFoofoo;private

java - 如何防止 "Local transaction already has 1 non-XA Resource"异常?

我在无状态EJB中使用了2个PU,它们中的每一个都在一个方法上被调用:@PersistenceContext(unitName="PU")privateEntityManagerem;@PersistenceContext(unitName="PU2")privateEntityManagerem2;@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)publicvoidgetCandidates(finalIntegereventId)throwsControllerException{ElectionEventel

java - Liquibase 错误 [Postgresql] : unterminated dollar-quoted string at or near "$BODY$

Liquibaseerror:unterminateddollar-quotedstringatornear"$BODY$`Chaneg日志xml有一个条目:见下文包含文件="/home/dev/....../admin_script.sql"文件内容:...............CREATEORREPLACEFUNCTIONmy_schema.function-name()RETURNSsmallintAS$BODY$DECLAREv_next_gen_idsmallint:=0;BEGIN..........异常(exception):liquibase.exception.Da

java - 如何让 string.format 在编译时报错

编译器可以访问格式字符串以及所需的类型和参数。所以我假设会有一些方法来指示可变参数的缺失参数......即使只针对一部分情况。eclipse或其他ide是否有某种方式表明传递的可变参数可能会在运行时导致问题? 最佳答案 看起来FindBugs可以解决您的问题。有一些与格式字符串相关的警告类别。http://www.google.com/search?q=%2Bjava+%2Bprintf+%2Bfindbugshttp://findbugs.sourceforge.net/bugDescriptions.html#VA_FORMAT

java - 练习 : removing all string occurrences from another

我正在做一些初学者的编码练习,我遇到了这个问题:给定两个字符串,base和remove,返回一个版本的base字符串,其中remove字符串的所有实例都已被删除。(不区分大小写)。这是我目前所拥有的,但它根本不起作用。publicStringwithoutString(Stringbase,Stringremove){for(inti=0;i我还没有处理区分大小写的部分以使其对我自己更明显。我也不确定为什么我不能使用base.replaceAll("remove","");感谢您的帮助。编辑*:我犯了一个菜鸟错误,replaceAll仍然有效。此外,我如何使用循环和条件来完成此操作?会

java - String.split 以分号分隔

我想用分号(“;”)分割一个字符串:Stringphrase="‫;‪14/May/2015‬‬‫‪FC‬‬‫‪Barcelona‬‬‫‪VS.‬‬‫‪Real‬‬‫‪Madrid";String[]dateSplit=phrase.split(";");System.out.println("dateSplit[0]:"+dateSplit[0]);System.out.println("dateSplit[1]:"+dateSplit[1]);但它删除了“;”从字符串并将所有字符串放入'datesplit1'所以输出是:dateSplit[0]:‫dateSplit[1]:‪14/

java - List<Object> 变量赋值与其他通用列表兼容,例如 Java 中的 List<String>

最近几天我一直在努力了解Java泛型。据我了解,Java泛型不是协变的,所以List赋值与其他泛型不兼容List但是在下面的程序中,nameAndPhone.collect()方法返回List类型的列表当我替换引用变量时ListnpList与ListnpList该程序仍然可以在没有警告的情况下编译。我尝试使用类似的方法返回List同样,并使用List引用变量没有导致任何错误。为什么是List与List兼容的分配在这里?importjava.util.*;importjava.util.stream.*;classNamePhoneEmail{Stringname;Stringphone

java - 为什么 Sun 指定 String.hashCode() 实现?

关于依赖String.hashCode()的当前实现是否安全似乎一直存在争论,因为从技术上讲,它由规范(Javadoc)保证。为什么Sun在规范中指定String.hashCode()的实现?为什么开发人员需要依赖hashCode()的特定实现?Sun为何如此害怕如果将来更改String.hashCode()天会塌下来?(这可能是由#2解释的) 最佳答案 依赖hashCode()的特定实现的一个原因是它是否曾经持久化到数据库、文件或任何其他存储介质中。BadThings(tm)如果在散列算法发生变化时读回数据,就会发生这种情况。您可

java - Apache Ivy : Difference between local Ivy cache and local repository

默认情况下,Ivy在你的/.ivy2下安装一个“本地缓存”目录。但是如果我决定在同一台机器上“托管”一个本地存储库,比如说,在/workbench/ivy/,那么这两个概念有什么不同呢?缓存与工件存储库不是一回事吗? 最佳答案 概念页面描述了ivy缓存的功能及其包含的文件种类:http://ant.apache.org/ivy/history/latest-milestone/concept.html简而言之,ivy缓存旨在提高性能,它并不意味着构建所依赖的文件的最终副本。永远不会发布到缓存。这就是ivy存储库的用途。补充说明:有一