Skip to content
Snippets Groups Projects
Commit d8774d5e authored by Martin Vatshelle's avatar Martin Vatshelle
Browse files

Code after lecture 12

parent 9dc71a43
No related branches found
No related tags found
No related merge requests found
package lecture12_generics;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
public class MostCommonFinder {
public static <T> T findMostCommon(List<T> list) {
Optional<T> bestElem = Optional.empty();
int maxAntall=0;
for(T elem : list) {
//int antall = countOccurences(list, elem);
int antall = Collections.frequency(list, elem);
//update max value
if(antall>maxAntall) {
maxAntall = antall;
bestElem = Optional.of(elem);
}
}
return bestElem.get();
}
private static <T> int countOccurences(List<T> list, T elem) {
//telle antall ganger dette elementet forekommer
int antall = 0;
for(T elem2 : list) {
if(elem.equals(elem2)) {
antall++;
}
}
return antall;
}
}
package lecture12_generics;
public class Pair<T,V> {
T first;
V last;
Pair(T first, V last){
this.first = first;
this.last = last;
}
T getFirst(){
return first;
}
V getLast(){
return last;
}
@Override
public String toString() {
return first.toString()+", "+last.toString();
}
}
package lecture12_generics;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class UseMostCommon {
public static void main(String[] args) {
List<Integer> tall = new ArrayList<Integer>();
tall.addAll(Arrays.asList(1,2,3,2,3,5,2,7,3,2,8));
Integer common = MostCommonFinder.findMostCommon(tall);
System.out.println("Most common: "+common);
List<String> names = new ArrayList<>();
names.addAll(Arrays.asList("Per","Lise","Martin","Lise","Ole"));
String mostCommon = MostCommonFinder.findMostCommon(names);
System.out.println("Most common: "+mostCommon);
}
}
package lecture12_generics;
public class UsePair {
public static void main(String[] args) {
Pair<String,String> navn = new Pair<String,String>("Martin", "Vatshelle");
String firstString = navn.getFirst();
System.out.println(navn);
Pair<Integer,Integer> tall = new Pair<Integer,Integer>(12,17);
Integer firstTall = tall.getFirst();
System.out.println(tall);
Pair<String,Integer> par = new Pair<String,Integer>("INF",101);
String first = par.getFirst();
Integer last = par.getLast();
System.out.println(par);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment