在阅读了关于流的文章之后,我现在尝试用简单的例子来使用它们,第一个问题出现了。我想实现一个非常简单的加密算法,它使用替换。有一些文本需要加密:
static List<Integer> text = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
11, 12, 13, 14, 15, 16, 17, 18, 19, 20);有一些密码:
private List<Integer> password = Arrays.asList(1, 5, 7, 3);现在的想法是将密码值添加到文本值中。结果应该是
1+1,2+5,3+7,4+3,5+1,6+5 .
因此,我必须从密码创建一个流,它从到达上面列表的末尾开始。这部分我已经做好了。
现在我不得不将两个流合并成一个流。有什么想法,怎么做到的?
发布于 2014-12-04 10:30:59
我可能会在这里创建索引:
IntStream.range(0, text.size())
.map(i -> text.get(i) + password.get(i % password.size())
.toArray();发布于 2014-12-04 10:39:13
这些是列表,您的结果也将是一个列表。
您创建了一个新的List crypt = new ArrayList();然后循环遍历文本列表,并对文本列表中的每个项添加密码列表索引中的值,即文本列表%password.size()中的索引;
List<Integer> crypt= new ArrayList<Integer>();
for(int index= 0;index=<text.size();index++){
crypt.add(text.get(index)+password.get(index % password.size());
}https://stackoverflow.com/questions/27291443
复制相似问题