Tag: java

在Java中使用分隔符(与split相反)将数组元素连接起来的快捷方法

看到相关的.NET问题 我正在寻找一种快速而简单的方法来完成与split相反的操作,以使得["a","b","c"]变成"a,b,c" 迭代一个数组需要添加一个条件(如果这不是最后一个元素,请添加分隔符)或使用子串删除最后一个分隔符。 我确定有一个认证的,有效的方法来做到这一点(Apache Commons?) 你喜欢在你的项目中做什么?

如何检查一个字符串是否包含另一个字符串在Java中不区分大小写的方式?

说我有两个字符串, String s1 = "AbBaCca"; String s2 = "bac"; 我想执行一个返回s2包含在s1的检查。 我可以这样做: return s1.contains(s2); 我很确定contains()是区分大小写的,但是我不能确定这是从阅读文档。 如果是的话,我想我最好的方法是这样的: return s1.toLowerCase().contains(s2.toLowerCase()); 除此之外,还有另一种(可能更好的)方式来实现这一点,而不关心区分大小写吗?

为什么我没有在这个例子中得到一个java.util.ConcurrentModificationException?

注意:我知道Iterator#remove()方法。 在下面的代码示例中,我不明白为什么main方法中的List.remove抛出ConcurrentModificationException ,但不在 remove方法中。 public class RemoveListElementDemo { private static final List<Integer> integerList; static { integerList = new ArrayList<Integer>(); integerList.add(1); integerList.add(2); integerList.add(3); } public static void remove(Integer toRemove) { for(Integer integer : integerList) { if(integer.equals(toRemove)) { integerList.remove(integer); } } } public static void main(String… args) { remove(Integer.valueOf(2)); Integer toRemove = Integer.valueOf(3); for(Integer integer : integerList) […]

你什么时候在Java中使用可变参数?

我怕可怕的 我不知道该用什么。 另外,让人们通过尽可能多的论据是很危险的。 什么是一个环境的例子,将是一个很好的地方使用它们?

在升级到OSX Yosemite后,RStudio / R中的rJava加载错误

我最近从OSX Mountain Lion升级到优胜美地,从3.1.3升级到3.2。 升级完成后立即打开R或RStudio,弹出消息说我需要安装Java 6.另外,加载rJava或任何依赖rJava的软件包(例如xlsx )会导致RStudio崩溃(R当我尝试通过直接打开R.app时也崩溃了)。 在堆栈溢出和其他地方(更多细节见下文)发现一些修复后,我在加载rJava或任何依赖rJava包不再导致R崩溃,但导致以下错误的一点: library(rJava) Error : .onLoad failed in loadNamespace() for 'rJava', details: call: dyn.load(file, DLLpath = DLLpath, …) error: unable to load shared object '/Library/Frameworks/R.framework/Versions/3.2/Resources/library/rJava/libs/rJava.so': dlopen(/Library/Frameworks/R.framework/Versions/3.2/Resources/library/rJava/libs/rJava.so, 6): Library not loaded: @rpath/libjvm.dylib Referenced from: /Library/Frameworks/R.framework/Versions/3.2/Resources/library/rJava/libs/rJava.so Reason: image not found Error: package or namespace load failed for 'rJava' 但是,如果我从命令行调用R,然后加载rJava或任何依赖rJava包,它似乎工作(或至少我没有得到任何错误信息)。 我已经尝试了一些不同的尝试修复,其中一些修复了几次,并且不能完全记得我按照什么顺序做了什么(没有意识到这将是一个恶作剧,并没有真正跟踪) ,但这是它的要点: 将以下内容添加到我的.bash_profile […]

如何使用SAX解析器解析XML

我正在学习这个教程 。 它工作得很好,但我希望它返回一个数组与所有的字符串,而不是与最后一个元素的单个字符串。 任何想法如何做到这一点?

Java值集合对? (元组?)

我喜欢Java有一个Map,你可以在Map中定义每个条目的类型,例如<String, Integer> 。 我正在寻找的是一种集合,其中集合中的每个元素都是一对值。 对中的每个值都可以有自己的类型(如上面的String和Integer例子),在声明时定义。 该集合将保持其给定的顺序,并不会将其中一个值视为唯一键(如在地图中)。 基本上我想能够定义一个类型为<String,Integer>或任何其他2种类型的ARRAY。 我意识到,除了2个变量之外,我可以做一个班级,但是看起来过于冗长。 我也意识到我可以使用2D数组,但是由于需要使用不同的类型,所以我必须使它们成为OBJECT数组,然后我必须一直投射。 我只需要在集合中存储对,所以每个条目只需要两个值。 像这样的东西存在没有去上课路线? 谢谢!

将java.util.Date转换为String

我想将java.util.Date对象转换为Java中的String 。 格式是2010-05-30 22:15:52

如何创建一个通用数组?

我不明白泛型和数组之间的联系。 我可以使用泛型类型创建数组引用: private E[] elements; //GOOD 但是不能用泛型类型创建数组对象: elements = new E[10]; //ERROR 但它的作品: elements = (E[]) new Object[10]; //GOOD

方法与另一种类型的方法具有相同的擦除

为什么在同一个班上有这两种方法是不合法的? class Test{ void add(Set<Integer> ii){} void add(Set<String> ss){} } 我收到compilation error 方法add(Set)与Test类型中的另一个方法具有相同的擦除add(Set)。 而我可以解决它,我想知道为什么javac不喜欢这个。 我可以看到,在很多情况下,这两种方法的逻辑非常相似,可以用一个单一的方法来代替 public void add(Set<?> set){} 方法,但这并不总是如此。 如果你想要有两个constructors来接受这些参数,那么这是非常烦人的,因为那样你就不能只改变一个constructors的名字。