java - 什么是atoms变量以及它的用途是什么?

标签 java

public List<Minterm> completeMinterm(Minterm minterm, String variables){
  List<Minterm> minterms=new ArrayList<Minterm>();

    Minterm m1=new Minterm();
    Minterm m2=new Minterm();
    for (int k = 0; k < minterms.size(); k++) {
        for (int i = 0; i < variables.length(); i++) {
       ..
        }
            m1= minterms.get(k);
            m1.addAtom(new Atom(variables.charAt(i),false));
            m2 = minterms.get(k);
            m2.addAtom(new Atom(variables.charAt(i),true));

        ..
    }
    }

我使用eclipse调试器发现错误,我不明白,为什么添加到m2的原子同时也添加到m1,当这一行正在运行:

m2.addAtom(new Atom(variables.charAt(i),true));

知道为什么吗?

最佳答案

在此之后

m1= minterms.get(k);
m1.addAtom(new Atom(variables.charAt(i),false));
m2 = minterms.get(k);
m2.addAtom(new Atom(variables.charAt(i),true));

m1 和 m2 指向同一个对象(从 minterms.get(k); 返回)。例如,您可以尝试比较 m1 和 m2 哈希码或指针 (m1==m2)。

关于java - 什么是atoms变量以及它的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11757844/

相关文章:

java - 级联不适用于使用 Spring Data JPA 存储库进行删除

java - 迭代时比较 HashMap 元素的优化

java - 多个bean 引用同一个类?

java - 如何获取实现特定 OSGi Bundle 中的接口(interface)的所有类

java - 屏幕旋转后 ImageView setImageBitmap 不更新

java - 在 Java 中对包含百万个数字的数组进行排序

java - 方面是否在自己的线程中执行?

java - 使用 Gson 将 JSON 字符串解析为 Dictionary<String, Integer>

java - STS 2.8.0 StartExplorer/旧版插件安装问题

java - Jersey Client/JAX-RS 和可选(非默认)@QueryParam(客户端)