Hallo,
ich habe keinen universitären Hintergrund und auch keinen Prof zum fragen. Nachdem ein TO hier verschwunden ist, interessiert mich doch die Antwort. Es ging darum, einen Index mit Keywords in Context zu erstellen. Um das zu vereinfachen habe ich drei Zeilen erstellt, bei denen das "a" jeweils ein Füllwort darstellt, das rausgefiltert werden soll. Momentan stecke ich aber einen Schritt vorher fest. Wie kann ich die Einträge der Liste "res" sortieren, und wie kann ich dafür sorgen, dass Zeilennummern mitgenommen werden. Das habe ich jetzt noch nicht angedacht. Aber würde man die Zeilennummern den String mit aufnehmen oder seperat führen. Dann wäre es aber kein Stream of Strings mehr.Mmh?
Hier der Code:
ich habe keinen universitären Hintergrund und auch keinen Prof zum fragen. Nachdem ein TO hier verschwunden ist, interessiert mich doch die Antwort. Es ging darum, einen Index mit Keywords in Context zu erstellen. Um das zu vereinfachen habe ich drei Zeilen erstellt, bei denen das "a" jeweils ein Füllwort darstellt, das rausgefiltert werden soll. Momentan stecke ich aber einen Schritt vorher fest. Wie kann ich die Einträge der Liste "res" sortieren, und wie kann ich dafür sorgen, dass Zeilennummern mitgenommen werden. Das habe ich jetzt noch nicht angedacht. Aber würde man die Zeilennummern den String mit aufnehmen oder seperat führen. Dann wäre es aber kein Stream of Strings mehr.Mmh?
Hier der Code:
Java:
package lambda;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.stream.Stream;
public class Baguette {
public static void main(String[] args) {
// TODO Auto-generated method stub
List<String> al=new ArrayList<String>();
al.add("A a D");
al.add("B a E");
al.add("C a F");
List<String> res= new ArrayList<>();
for (String s : al) {
String[] sl=s.split("\\s");
//Liste aus Einzelteilen anlegen
List<String> za=new ArrayList<>();
for(String b : sl){
za.add(b);
}
String rs;
for (int i=0;i<sl.length;i++) {
rs=rotateListByN(i,za);
res.add(rs);
}
}
Stream<String> st=res.stream();
long anz= st.count();
for (String a : res ) {
System.out.println(a);
}
System.out.println(anz);
}
static String rotateListByN(int n, List<String> input) {
List<String> a = new ArrayList<>();
a.addAll(input);
Collections.rotate(a, n);
return String.join(" ", a);
}
}