首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在不同的机器上运行JAR的奇怪行为

在不同的机器上运行JAR的奇怪行为
EN

Stack Overflow用户
提问于 2016-08-16 17:55:34
回答 1查看 95关注 0票数 0

我在我的小Java应用程序中发现了一个奇怪的行为(至少对我来说是这样)。我有一个从命令行运行的app.jar来做一个简单的任务。任务是,从给定的列表中找到重复的值并删除它们。该应用程序是使用JDK-7开发的,并使用JRE-7运行。

从我的PC的命令行,一切正常,但当运行相同的JAR的虚拟机,这是Windows-7作为我的和相同的JRE,它没有删除重复的,没有任何错误发生。

下面是我的代码:

代码语言:javascript
复制
public List<String> removeDuplicatedFin(List<String> coreList,
            Map<String, String> strToRemoveMap) {
        for (int y = 0; y < coreList.size(); y++) {
            String str = coreList.get(y).getPosts().get(0).getMyStr();
            String id = coreList.get(y).getPosts().get(0).getId();
            if (strToRemoveMap.get(str) != null
                    && strToRemoveMap.get(str).equals(idPost)) {
                coreList.get(y).getPosts().remove(0);
            }
        }
        return coreList;
    }

coreList是主列表

strToRemoveMap包含要删除的值

有什么想法或帮助吗?

提前感谢

EN

回答 1

Stack Overflow用户

发布于 2016-08-16 21:07:06

非常感谢你的回复。最后,我发现出现这种异常是因为我将两个字符串与示例进行了比较

if(str1.equals(str2))

我不知道为什么当我改变的时候

代码语言:javascript
复制
if(str1 == str2) 

它工作得很完美。但是,在Eclipse和我的PC中,它也可以使用equals()。

我需要学习更多关于这类事情的知识,而不仅仅是。

谢谢,祝你有愉快的一天。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38971825

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档