小编use*_*008的帖子

这个Haskell定义是什么意思?

Eq a => [a] -> [(Int,a)]
Run Code Online (Sandbox Code Playgroud)

我不知道Eq的含义或含义,所以我不知道整个定义的含义是什么?

syntax haskell

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

为什么会出现解析错误?

为什么会出现解析错误?我插入一个列表,并希望得到元组.(顶行是正确的).

freq :: Eq a => [a] -> [(Int,a)]
freq x:xs  = [(x,y)| (x,y) x <- count , y <- rmdups]
Run Code Online (Sandbox Code Playgroud)

syntax haskell

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

如何修复"发生检查:无法构造无限类型"错误?

我正在尝试编写一个remove函数,以便用户可以输入remove 'd' ["abc", "dc", "ad"]并获取输出["abc", "c", "a"].

我的代码是:

remove :: Eq a => a -> [[a]] -> [[a]]
remove a (x:xs) = filter (not.a) (x:xs)
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误消息:

Occurs check: cannot construct the infinite type: a = [a] -> Bool
   When generalising the type(s) for `remove'
Run Code Online (Sandbox Code Playgroud)

错误消息的含义是什么,以及如何更改第二行以使其有效?

haskell list

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

Java行代码出错

http://pastebin.com/gDMy7fPw

上面,我的形状创建者的代码,这是一个部分,但独立.

我收到错误

g2d.drawLine(p1.getX(), p1.getY(), p2.getX(), p2.getY());
Run Code Online (Sandbox Code Playgroud)

这基本上说它不能在基本类型double上调用getX(),不能在基本类型double上调用getY().

我可以更改除该方法之外的任何代码.有谁知道我怎么能摆脱那个错误,因为我不知道这意味着什么.

java line

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

为什么不给出正确的输出?

count :: Eq a => a -> [a] -> Int
count _[]                  = 0
count z (x:xs) | z == x    = 1 + (count z xs)
               | otherwise = count z xs

rmdups :: Eq a => [a] -> [a]
rmdups [] = []
rmdups (x:xs) | count x xs > 0 = rmdups xs
              | otherwise     = x: rmdups xs
Run Code Online (Sandbox Code Playgroud)

上面的代码编译,但是当我输入'ababca'rmdups的输出时'bca',我希望它是'abc'.为什么去那里?我一直在改变代码,并且不知道为什么会这样做.

haskell

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

将列表排序为元组

我是Haskell的新手,我正在尝试使用它的第一个元素对元组列表进行排序sort.所以,如果我有,["a", "b", "a", "c", "c"]我会得到类似的东西[(1,"b"), (2,"a"), (2,"c")](在相同数字的情况下按字母顺序排列).

我该怎么做呢?我现在完全迷失了......我仍然试图进入'哈斯克尔的思维方式'.

sorting haskell function

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

标签 统计

haskell ×5

syntax ×2

function ×1

java ×1

line ×1

list ×1

sorting ×1