小编Has*_*hin的帖子

从Haskell中的列表中删除共轭元组

我有一个元组列表.每个元组也是一个元组.对于每个外部元组,我有一个共轭元组.我的意思是,如果我在列表中有(a,b),那么我也有(b,a).我想要的是从列表中删除共轭元组.

为了给你一个我列表的具体例子,它是:

[((1,2,1,0),(5,2,1,0)),((2,4,4,0),(2,5,4,0)),((2,5,4,0),(2,4,4,0)),((3,1,1,0),(3,3,2,0)),((3,3,2,0),(3,1,1,0)),((5,1,7,0),(8,1,7,0)),((5,2,1,0),(1,2,1,0)),((5,5,8,0),(8,5,8,0)),((5,6,6,0),(8,6,8,0)),((5,9,9,0),(8,9,9,0)),((6,3,5,0),(6,8,9,0)),((6,8,9,0),(6,3,5,0)),((7,7,6,0),(9,7,6,0)),((8,1,7,0),(5,1,7,0)),((8,5,8,0),(5,5,8,0)),((8,6,8,0),(5,6,6,0)),((8,9,9,0),(5,9,9,0)),((9,7,6,0),(7,7,6,0))]

删除共轭元组后的结果应为:

[((1,2,1,0),(5,2,1,0)),((2,4,4,0),(2,5,4,0)),((3,1,1,0),(3,3,2,0)),((5,1,7,0),(8,1,7,0)),((5,5,8,0),(8,5,8,0)),((5,6,6,0),(8,6,8,0)),((5,9,9,0),(8,9,9,0)),((6,3,5,0),(6,8,9,0)),((7,7,6,0),(9,7,6,0)),]

我已经尝试了几个小时没有成功.任何帮助将不胜感激.

haskell tuples list

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

具有最终用户馈送字段的类的Java构造函数

我的问题是:使用通过初始化的字段编写Java类构造函数的最佳方法是什么stdin

例如,假设我有一个Employee类似于以下的类:

Public class Employee {
    private int empID;
    private String empName;
    private List<Role> empRoles;
    {....}
}
Run Code Online (Sandbox Code Playgroud)

我可以为这堂课写下所有的设定者和吸气剂.当然,Role该类将拥有自己的文件.

还假设我为前两个字段创建了我的setter,如下所示,以便让最终用户初始化字段:

public void setEmpID() {
    System.out.println("Please enter the employee ID");
    Scanner s = new Scanner (System.in);
    this.empID = s.nextInt();

public void setEmpName() {
    System.out.println("Please enter the employee name");
    Scanner s = new Scanner (System.in);
    this.empName = s.next();
}
Run Code Online (Sandbox Code Playgroud)

然后:

  1. 我可以在覆盖默认构造函数的构造函数中使用此类setter.
  2. 这是编写此类构造函数的最佳方法吗?
  3. Scanner我在每个setter中创建的对象移动到构造函数并将其作为setter的参数更好

例如:

public void setEmpName(Scanner s) {
    ...
    this.empName = s.next();
}
Run Code Online (Sandbox Code Playgroud)

如您所见,这可能是一个设计问题,而不仅仅是"编码". …

java constructor design-patterns

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

将Haskell函数转换为java"函数"

我在Haskell中有这个函数,我想知道如何将它转换为Java,特别是使用流:

build = [(w,m,n,g) | w <- [240..1280], m <- [2,4..20], n <- [2..100], g <- [240..1280], ((w - 2*m - n*g) `mod` (n+1) == 0), n*g+2*m <= w, n*g <= w]
Run Code Online (Sandbox Code Playgroud)

java haskell java-8 java-stream

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

地图传染媒介到树里

我有一个具有以下结构的集合[{:a 0} {:b 1} {:c 1} {:d 2} {:e 3} {:f 2}].基本上,它是一棵树,其中向量的元素是节点.这个数字表示的是亲子关系.因此,元素{:a 0}是主父(没有父母),而{:b 1},{:c 1}是{:a 0}的子元素.此外,{:d 2}是{:c 1}的孩子.

我想要的是构造一个具有以下结构的列表或向量(此时无关紧要):[{:a {:b nil:c {:d {:e nil}:f nil}}} ].

怎么能实现这一目标?

dictionary vector clojure

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

关于Haskell IO Monad中的(执行时)

我对IO Monad没有任何问题.但我想了解以下内容:

  1. 在All/almost Haskell教程/教科书中,他们一直说getChar不是一个纯函数,因为它可以给你一个不同的结果.我的问题是:谁说这首先是一个功能.除非你给我执行这个功能,并且我研究了这个实现,我不能保证它是纯粹的.那么,那个实现在哪里?
  2. 在All/almost Haskell教程/教科书中,据说(IO String)是一个动作(当执行时)它可以返回一个String类型的值.这很好,但是这个执行发生的人/地点.当然!计算机正在执行此操作.这也没关系.但由于我只是一个初学者,我希望你原谅我问,这个"执行"的配方在哪里.我猜它不是用Haskell编写的.这个后来的想法是否意味着,毕竟Haskell程序被转换为类似C的程序,最终将转换为程序集 - >机器代码?如果是这样,哪里可以找到Haskell中IO内容的实现?

非常感谢

io haskell function

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