在java 8中,我知道他们添加了利用多核处理器的并行流,我知道你可以使用这样的东西:
List<String> list = new ArrayList<String>();
list.parallelStream().forEach(str -> System.out.println(str));
Run Code Online (Sandbox Code Playgroud)
但是我如何通过HashMap实现这样的目标呢?
Map<String, Integer> map = new HashMap<String, Integer>();
// won't work, because the Map class doesn't have the .parallelStream()
map.parallelStream().forEach((str, num) -> System.out.println(str + ":" + num));
Run Code Online (Sandbox Code Playgroud)
有谁知道怎么做这样的事情?谢谢
我用Google搜索,我真的不明白该怎么做.我正在尝试将项目添加到这样的列表:List<?>.我的代码看起来像这样:
public class Test {
private List<?> list;
public Test(List<?> useThisList) {
this.list = useThisList;
}
public void add(Object add) {
this.list.add(add); // this won't compile
}
}
Run Code Online (Sandbox Code Playgroud)
但是,如评论所述,该代码将无法编译.我试图将其更改为:
public void add(? add) {
this.list.add(add);
}
Run Code Online (Sandbox Code Playgroud)
但是由于更明显的原因,这不会编译.有谁知道我需要改变它以使其正常运作?提前致谢!
顺便说一句,当它工作时,你应该能够这样做:
List<String> list = new ArrayList<String>();
new Test(list).add("hello");
Run Code Online (Sandbox Code Playgroud) 我使用Java Swing创建简单的游戏,如Pong和Air Hockey,我经常发现自己使用毕达哥拉斯定理来计算两点之间的距离.
虽然写入并不痛苦(可以简化为单行),但我想知道Java是否已经将它包含在某个地方.
我浏览了数学课,我没有看到任何东西.我不知道在哪里可以看,所以如果确实存在,有谁知道在哪里?
谢谢!
我正在努力创建一个让你重复任务一定次数的课程,或直到满足条件.在继续之前,请考虑以下事项:
int test = 0;
Run Code Online (Sandbox Code Playgroud)
我的重复课:
public static abstract class Repeat {
public void loop(int c) {
for (int i = 0; i < c; i++) {
run();
}
}
public void until(boolean c) {
while (!c) {
run();
}
}
public abstract void run();
}
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是until(boolean c)方法,而不是loop(int c)方法.该循环方法工作得很好,如下证明:
public static void main(String[] args) {
new Repeat() {
@Override
public void run() {
test += 1;
System.out.println(test); // so I know what test …Run Code Online (Sandbox Code Playgroud) 我想知道/** hello */Java中的内容是什么.我目前使用它们的唯一原因是因为我喜欢它在Eclipse中如何显示蓝色而我懒得在我的偏好中改变颜色.我注意到当我自动添加像serialVersionUID它放在/** * */它上面的东西时,它实际上是什么?