我想通过Java中的类实现FIFO.
这样的课程已经存在吗?如果没有,我该如何实现自己的?
注意
我在这里找到了一个类http://www.dcache.org/manuals/cells/docs/api/dmg/util/Fifo.html,但它不包含dmg.util.*.我不知道这样的包装是否存在.
该功能const在Prelude中定义为:
const x _ = x
Run Code Online (Sandbox Code Playgroud)
在GHCi,当我尝试
Prelude> const 6 5 -> Gives 6
Run Code Online (Sandbox Code Playgroud)
但是当我尝试的时候
Prelude> const id 6 5 -> Gives 5
Run Code Online (Sandbox Code Playgroud)
即使在做出改变之后
Prelude> (const id 6) 5 -> Gives 5
Run Code Online (Sandbox Code Playgroud)
这个函数不应该给出函数6的输出id有id :: a -> a应该绑定的类型
Prelude> (const 6) 5 -> Gives 6
Run Code Online (Sandbox Code Playgroud)
为什么函数const表现不同?
我有一个枚举
public enum Days {
SUNDAY, MONDAY, TUESDAY, WEDNESDAY,
THURSDAY, FRIDAY, SATURDAY
Run Code Online (Sandbox Code Playgroud)
}
我想创建一个可以获取类型为days的值的类.所以我使用了Java Generics
public class State<T extend Days>
Run Code Online (Sandbox Code Playgroud)
但是有一个错误
The type parameter T should not be bounded by the final type Days.
Final types cannot be further extended
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个问题?
我试图为月度教程制作Tic Tac Toe游戏并编写此代码以首先制作一个盒子:
box :: [String]
box = ["0 | 1 | 2",
"---------",
"3 | 4 | 5",
"---------",
"6 | 7 | 8"]
Run Code Online (Sandbox Code Playgroud)
我在GHCi中获得此输出:
["0 | 1 | 2\n","---------\n","3 | 4 | 5\n","---------\n","6 | 7 | 8\n"]
Run Code Online (Sandbox Code Playgroud)
我想得到:
0 | 1 | 2
---------
3 | 4 | 5
---------
6 | 7 | 8
Run Code Online (Sandbox Code Playgroud)
我该如何打印这样的网格?
我创建的java项目将测试1800个案例,每个案例的输出必须与黄金(所需)输出相匹配.我为此创建了一个perl脚本并在cygwin上运行它.
有一些情况会抛出异常,但它们被错误地认为是正确的.我想在java代码中添加一个try catch块,这样如果抛出任何异常,就会捕获它并在文件上打印堆栈跟踪exception.txt.
Pseudo Java code:
main()
{
try
{
... //complete code of main()
}
catch (Exception e)
{
FileWriter fstream=new FileWriter("exception.txt");
BufferedWriter out=new BufferedWriter(fstream);
out.write(e.toString());
out.close();
}
}
Run Code Online (Sandbox Code Playgroud)
但是这会覆盖以前的文件内容,最后文件包含最后抛出的异常.如何编写catch块以便打印stackTrace并且文件内容完好无损且每次都不会被覆盖.
我String喜欢"1 2 3 4 5".如何将其转换为[1,2,3,4,5]Haskell 中的整数列表?如果清单"12345"怎么办?
我有一个界面.
public interface Module {
void init();
void actions();
}
Run Code Online (Sandbox Code Playgroud)
当我尝试创建这样的数组时会发生什么?
Module[] instances = new Module[20]
Run Code Online (Sandbox Code Playgroud)
我该如何实现这个数组?
在我正在研究的java项目中,项目的某些部分之前由C中的其他人编写,现在我需要在Java中编写相同的内容.
C代码中有一个用于打印到文件的语句:
fprintf(ff, "%04X ", image[y*width+x]);
Run Code Online (Sandbox Code Playgroud)
首先,我不确定的含义%04X.我认为这意味着如果image[i]长度为五或更长,则只打印最左边的四个字符.为了在Java中做同样的事情,我想到了使用and操作来掩盖值
image[i] & 0xFFFF
Run Code Online (Sandbox Code Playgroud)
有人可以告诉我正确的含义%04X以及如何在Java中做同样的事情吗?谢谢.
我正在处理以下代码,并希望在框字符串中找到数字的索引.所以我使用了findIndex,但它返回了Maybe Int值,而我只想要Int值.
我如何将Maybe Int转换为Int值,或者有什么方法可以从Maybe Int中提取Int.如果Maybe Int不存在,代码应该输出错误消息
box:: String
box = unlines $ ["0 | 1 | 2",
"---------",
"3 | 4 | 5",
"---------",
"6 | 7 | 8"]
moves = do
putStrLn " Enter the number"
number <- readLn :: IO Int
print number
findpostion number box
findposition number box = findIndex (==number) box
Run Code Online (Sandbox Code Playgroud) 我正在研究编写类似于C++程序的Haskell代码的问题.
C++代码是:
class Rectangle
{
private:
int length;
int width;
public:
Rectangle()
{
length = 0;
width = 0;
}
Rectangle(int x)
{
length = x;
width =0;
}
Rectangle ( int x , int y)
{
length = x;
width = y;
}
};
Run Code Online (Sandbox Code Playgroud)
为了编写类似的Haskell代码,我创建了一个数据类型Rectangle
data Rectangle = Rectangle Length Width deriving (Eq, Show , Read)
type Length = Int
type Width = Int
Run Code Online (Sandbox Code Playgroud)
然后我想到了一个可以作为构造函数的加载函数.但我不明白如何使用不同数量的参数实现函数重载.请帮忙.谢谢.