我正在尝试在java中使用lambdas和stream,但我对它很新.当我尝试创建一个lambda表达式时,我在IntelliJ中遇到了这个错误"lambda转换的目标类型必须是一个接口"
List<Callable<SomeClass>> callList = prgll.stream()
.map(p->(()->{return p.funct();} )) <--- Here I get error
.collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
难道我做错了什么?
我想只反转连续序列,而不是原始列表中的所有元素.
Ex:
(reverseC '( 1 2 ( 4 5 ) 5 ) ) => ( 2 1 ( 5 4 ) 5 )
(reverseC '(1 4 2 (3 4) 9 6 (7 8)))) => (2 4 1 (4 3) 6 9 (8 7))
Run Code Online (Sandbox Code Playgroud)
我正在考虑将它分成两个函数:一个用于反转一个简单列表(1 2 3) - >(3 2 1)和一个函数(main)来确定连续序列,从中列出一个列表,应用反向该列表和重制整个反转列表.
(defun reverse-list ( lista )
(if (eql lista () )
()
(append (reverse-list (cdr lista )) (list ( car lista)))
)
)
Run Code Online (Sandbox Code Playgroud)
这是相反的功能,但我不知道如何做另一个.我是Lisp的新手,我来自Prolog所以这是一个非常大的风景变化.欢迎任何想法.
(defun reverse-more (L)
(if (eql L nil) …Run Code Online (Sandbox Code Playgroud) 我想在页面中间有一条水平线.就像是
<div class="line">
<hr>
</div>
.line {
top: 50%;
}
Run Code Online (Sandbox Code Playgroud)
但这不起作用.我不想自己写这句话
<p> _______________________________________</p>
有没有办法让人力资源中心化?
我是Prolog的新手并遇到了这个谓词select/3.我想它是如何工作的,虽然我不确定我将如何自己实现它.我想是这样的:
selec(El,[El|T],T).
selec(El,[H|T],[H|S]) :-
selec(El,T,S).
select(El,[],[]).
Run Code Online (Sandbox Code Playgroud)
我知道有些事情是错的.我的解决方案只删除第一次出现.我希望它删除,在某些时候发生的所有事件,就像select/3那样.有任何想法吗?
我试图强迫用户在允许下一步移动之前选择一个rabiobutton.我使"下一步"按钮不可见,但我有10个radiobutton,如果检查其中任何一个,必须进行验证.根据定义,只能检查1个radiobutton.我的代码看起来像这样:
b1.Text = "Next";
b1.Parent = fpn1;
fpn1.Controls.Add(b1);
b1.Dock = DockStyle.Bottom;
b1.BackColor = Color.LightGray;
b1.Visible = false;
RadioButton rb;
while (b1.Visible == false)
{
MessageBox.Show("LOOOL");
//Thread.Sleep(5000);
rb = fpn1.Controls.OfType<RadioButton>()
.FirstOrDefault(r => r.Checked);
if (rb != null)
{
b1.Visible = true;
}
}
Run Code Online (Sandbox Code Playgroud)
因此,虽然没有点击我的单选按钮,但b1是不可见的.问题是......这会进入无限循环.用户甚至不能再选择任何按钮,因为页面将无法加载.有什么改变的想法吗?
我还能做些什么来获得想要的结果?
我有一个doubly linked list模拟a的行为singly linked list.所以我有一个左,右和信息,但左边总是空的.像这样的东西:
1 -> 2 -> 3 -> 4
Run Code Online (Sandbox Code Playgroud)
我想要的是在不重新创建节点的情况下将其重新变为双重,只需解析列表并重新构建连接即可.
1 -> <- 2 -><- 3 -><- 4
Run Code Online (Sandbox Code Playgroud)
我有
class Node {
private int info;
private Node left;
private Node right;
Run Code Online (Sandbox Code Playgroud)
我的方法:
static Node toDoublyLinked(Node root) {
if (root.getRight() != null) {
root.getRight().setLeft(root);
return toDoublyLinked(root.getRight());
}
return root;
}
Run Code Online (Sandbox Code Playgroud)
哪个不起作用.它使我的程序抛出堆栈溢出,因为当我连接2到1时,1已经连接到2-> 3 - > 4所以它将开始复制那段列表而不是我想要的.
解决这个问题有什么办法吗?
void add(int info) {
Node s = new Node();
if (this.info == 0) {
this.info = info;
} …Run Code Online (Sandbox Code Playgroud) 我想知道我是否可以将CSS代码添加为字符串,就像我可以通过JavaScript添加HTML代码一样,例如:
var div = document.createElement("div");
div.innerHTML =
'<div id="hs1"></div>\n' +
'<div id="hs2"></div>\n' +
'<div id="hs3"></div>\n'
document.body.appendChild(div);
Run Code Online (Sandbox Code Playgroud)
我能以类似的方式添加一个巨大的CSS代码吗?
基本上我有HTML + CSS + JS代码,我想放入.js文件而不是.html.我是网络开发的新手,所以我不知道.这甚至可能吗?
css ×2
html ×2
java ×2
list ×2
button ×1
c# ×1
common-lisp ×1
dom ×1
invisible ×1
javascript ×1
lambda ×1
linked-list ×1
linq ×1
lisp ×1
prolog ×1
radio-button ×1