小编use*_*269的帖子

检查两个集合是否包含相同元素的方式,与订单无关?

假设我有两个不同的哈希集,如下所示,我如何检查两个哈希集包含相同的元素,这两个哈希集是相等的,独立于集合中元素的顺序,请指教.. !!

Set set1=new HashSet();
          set.add(new Emp("Ram","Trainer",34000));
          set.add(new Emp("LalRam","Trainer",34000));
Run Code Online (Sandbox Code Playgroud)

另一个是......

Set set2=new HashSet();
          set.add(new Emp("LalRam","Trainer",34000));
          set.add(new Emp("Ram","Trainer",34000));
Run Code Online (Sandbox Code Playgroud)

员工pojo是......

class Emp //implements Comparable
{
      String name,job;
      public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getJob() {
        return job;
    }
    public void setJob(String job) {
        this.job = job;
    }
    public int getSalary() {
        return salary;
    }
    public void setSalary(int salary) {
        this.salary = salary;
    }
    int salary;
      public Emp(String n,String j,int sal) …
Run Code Online (Sandbox Code Playgroud)

java collections hashset

11
推荐指数
4
解决办法
4万
查看次数

选择界面或抽象类

在一次采访中,有人要求我证明何时选择界面以及何时选择抽象类以及在哪种情况下你将从两个中选择一个..我已经提出了我的界面分析,那就是......

接口是类型声明或定义多方之间合同的最佳选择.如果多个程序员在项目的不同模块中工作,他们仍然通过定义接口而不是等待实际实现准备就绪来使用彼此的API.

这为我们在编码和开发方面带来了很多灵活性和速度.使用Interface还可以确保最佳实践,例如"为接口编程而不是实现",从而产生更灵活和可维护的代码.

但是我没有充分的理由来证明抽象类的合理性,请指教..!

java abstract-class interface

4
推荐指数
2
解决办法
4691
查看次数

Hashcode()Vs Equals()

我有两个以下的课程..

class Emp //implements Comparable
{
      String name,job;
      public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getJob() {
        return job;
    }
    public void setJob(String job) {
        this.job = job;
    }
    public int getSalary() {
        return salary;
    }
    public void setSalary(int salary) {
        this.salary = salary;
    }
    int salary;
      public Emp(String n,String j,int sal)
      {
         name=n;
         job=j;
         salary=sal;
       }
      public void display()
      {
        System.out.println(name+"\t"+job+"\t"+salary);
       }



  public boolean equals(Object o)
      {

         Emp …
Run Code Online (Sandbox Code Playgroud)

java collections hashset

3
推荐指数
2
解决办法
4824
查看次数

关于不可变类

我有以下查询,我正在通过Java不可变类概念,并提出以下分析..

  • 所有字段必须是私有的,最好是最终的
  • 确保不能覆盖类 - 使类最终,或使用静态工厂并保持构造函数私有
  • 必须从构造函数/工厂填充字段
  • 不要为字段提供任何setter
  • 留意收藏品.使用Collections.unmodifiable*.
  • 此外,集合应仅包含不可变对象
  • 所有getter必须提供不可变对象或使用防御性复制
  • 不提供任何更改Object内部状态的方法.

现在我有以下课程..

public final class Bill {

    private final int amount;
    private final DateTime dateTime;
    private final List<Integers> orders;

}
Run Code Online (Sandbox Code Playgroud)

请告知如何将其作为不可变类.

java

1
推荐指数
1
解决办法
88
查看次数

标签 统计

java ×4

collections ×2

hashset ×2

abstract-class ×1

interface ×1