使用此流,我試圖重新分配變量c的流內部,以每次繪製不同的結果。我試圖在流之外使用foreach循環,但是我意識到它是徒勞的,因爲它不會在流中發生。爪哇 - 映射流變量再分配
我已作了評論,我試圖做到這一點。
List<Hills> hills = readHills();
Set<String> countys = new HashSet<>();
for (Hills s: hills) {
countys.add(s.getCounty());
String[] c = new String[0];
c[1] = s.getCounty();
System.out.println("### County: " + c[0]);
hills.stream()
.filter(Hill -> !Hill.getCounty().equals(c[0]))
.map((Hills Hill) -> Hill.getName() + " " + Hill.getHeight())
.forEach(Hill ->{
System.out.println(Hill);
c[0] = Hill.getCounty(); // This is what I am trying to do
});
}
數組從零開始索引。 – Omore
你已經使你的代碼變得更糟,現在你的數組長度爲零,但你仍然試圖訪問第二個數組元素,之後。儘管現在,每個訪問都會失敗。 – Holger