小编Fal*_*ise的帖子

Java API Streams在Map中收集流,其中value是TreeSet

有一个Student类,它们有name, surname, age字段和getter.

给定一个Student对象流.

如何调用一个collect方法,使得它将返回Map键所在的位置age,Student并且值TreeSet包含surname具有此类的学生age.

我想用Collectors.toMap(),但卡住了.

我以为我可以这样做并将第三个参数传递给toMap方法:

stream().collect(Collectors.toMap(Student::getAge, Student::getSurname, new TreeSet<String>()))`.
Run Code Online (Sandbox Code Playgroud)

java java-8 java-stream collectors

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

如何使用字节“ wb”模式写新字符串?

我正在使用字节数组的'wb'模式

for i in range(len(mas)):
    message.write(mas[i])
Run Code Online (Sandbox Code Playgroud)

在我必须将数据写入新行中的文件后,例如在“ w”模式下将“ \ n”

for i in range(3):
    message.write(str(i))
    message.write("\n")

>>>0

>>>1

>>>2

>>>3
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

python python-3.x

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

C ++布尔数组初始化

我想将我的二维布尔数组中的所有元素初始化为false。

size_t n, m;
cin >> n >> m;
bool arr[n][m] = {false};
for(size_t i = 0; i < n; i++){
    for(size_t j = 0; j < m; j++){
        cout << arr[i][j] << " ";
    }
    cout << endl;
}
Run Code Online (Sandbox Code Playgroud)

但是我对输出感到非常困惑。例如,如果n = 5且m = 5,则我具有以下内容:

0 27 64 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
Run Code Online (Sandbox Code Playgroud)

那么,代码有什么问题呢?

c++ arrays boolean initialization

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

std :: set_intersection的struct对象

我试图获得的存储类型被称为结构的对象在两个集合的交集dist,使用std::set_intersection.我希望结果存储在另一个中set<dist>.

但是,编译器会出现以下错误:

In file included from /usr/include/c++/5/algorithm:62:0,
             from /usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h:64,
             from /home/kirill/CLionProjects/contest/main.cpp:1:
/usr/include/c++/5/bits/stl_algo.h: In instantiation of ‘_OutputIterator std::__set_intersection(_InputIterator1, _InputIterator1, _InputIterator2, _InputIterator2, _OutputIterator, _Compare) [with _InputIterator1 = std::_Rb_tree_const_iterator<dist>; _InputIterator2 = std::_Rb_tree_const_iterator<dist>; _OutputIterator = std::_Rb_tree_const_iterator<dist>; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’:
/usr/include/c++/5/bits/stl_algo.h:5122:48:   required from ‘_OIter std::set_intersection(_IIter1, _IIter1, _IIter2, _IIter2, _OIter) [with _IIter1 = std::_Rb_tree_const_iterator<dist>; _IIter2 = std::_Rb_tree_const_iterator<dist>; _OIter = std::_Rb_tree_const_iterator<dist>]’
/home/kirill/CLionProjects/contest/main.cpp:65:73:   required from here
/usr/include/c++/5/bits/stl_algo.h:5076:16: error: passing ‘const dist’ as ‘this’ argument discards qualifiers [-fpermissive]
      *__result = *__first1;
            ^
/home/kirill/CLionProjects/contest/main.cpp:26:8: …
Run Code Online (Sandbox Code Playgroud)

c++ containers stl const set

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