Second Opinion
Folosind serviciul second opinion ne puteți trimite RMN-uri, CT -uri, angiografii, fișiere .pdf, documente medicale. Astfel vă vom putea da o opinie neurochirurgicală, fără ca aceasta să poată înlocui un consult de specialitate. Răspunsurile vor fi date prin e-mail în cel mai scurt timp posibil (de obicei în mai putin de 24 de ore, dar nu mai mult de 48 de ore). Second opinion – Neurohope este un serviciu gratuit. www.neurohope.ro |
Java 8 streams
#73
Posted 19 May 2019 - 10:56
Probabil la scoala aia aveau bani doar pentru un premiant
Se intimpla si in alte ramuri fie mai multi cu acelasi premiu, la sport se inghesuie citeodata pe podium... Bine ca nu erau premiati de programu cu streamuri ca se bateau intre ei... |
#74
Posted 19 May 2019 - 12:36
dani.user, on 08 mai 2019 - 19:59, said:
Sa se afiseze media pe clasa (9, 10, etc) a celor ce iau premiul 3. Aici am mentionat 9, 10, etc, nu 9A, 10B. Eram interesat sa compar, de exemplu, ce medii au cei cu premiul 3 in clasa 12-a fata de cei din clasa a 9-a. Varianta mea, dintr-o bucata import scala.io.Source object MediiElevi { def main(args: Array[String]): Unit = { Source.fromFile("elevi.csv").getLines().drop(1).map(_.split(',')) .map(s => MedieElev(nume = s(0), clasa = s(1), materie = s(2), medie = s(3).toInt)).toArray //note elevi .groupBy(m => (m.nume, m.clasa)).map { case ((nume, clasa), mediiAleElevului) => Elev(nume, clasa, medieAnuala = BigDecimal(mediiAleElevului.map(_.medie).sum) / mediiAleElevului.length) }.toArray //medii elevi .groupBy(_.clasa).flatMap { case (clasa, eleviDinClasa) => eleviDinClasa.groupBy(_.medieAnuala).toArray.sortBy { case (medie, eleviCuAceeasiMedie) => -medie } .slice(2, 3).flatMap { case (medie, eleviCuAceeasiMedie) => eleviCuAceeasiMedie } }.toArray //elevi cu premiul 3 .groupBy(_.numarClasa).map { case (numarClasa, elevi) => (numarClasa, elevi.map(_.medieAnuala).sum / elevi.length) } //mediile elevilor cu premiul 3 din fiecare clasa .toArray.sortBy { case (clasa, medieClasa) => clasa } .foreach { case (clasa, medieClasa) => println(s"Clasa $clasa, Medie $medieClasa") } } case class MedieElev(nume: String, clasa: String, materie: String, medie: Int) case class Elev(nume: String, clasa: String, medieAnuala: BigDecimal) { def numarClasa: Int = clasa.substring(0, clasa.length - 1).toInt } } Quote
Clasa 9, Medie 8.166666666666666666666666666666667 Clasa 10, Medie 8.325 Clasa 11, Medie 8.25 Clasa 12, Medie 8.277777777777777777777777777777778 Am fost mai explicit, sa nu se sperie lumea daca vede _._2._1. E chiar atat de criptic codul? Edited by dani.user, 19 May 2019 - 12:36. |
#75
Posted 19 May 2019 - 12:48
OriginalCopy, on 19 mai 2019 - 10:54, said:
De ce nu te incumeti? Scrii un pomelnic de teorie in postari, dar la practica dai de greu? dani.user, on 19 mai 2019 - 12:36, said:
Am fost mai explicit, sa nu se sperie lumea daca vede _._2._1. E chiar atat de criptic codul? |
#76
Posted 25 May 2019 - 10:45
dani.user, on 10 mai 2019 - 19:44, said: //ROW_NUMBER() OVER (PARTITION BY clasa ORDER BY medie) .sorted(Comparator.comparing(e -> new ComparablePair<>(e.getClasa(), e.getMedie()))) return new Pair<>(++rowNumber[0], e); dani.user, on 19 mai 2019 - 12:36, said:
Aici am mentionat 9, 10, etc, nu 9A, 10B. Eram interesat sa compar, de exemplu, ce medii au cei cu premiul 3 in clasa 12-a fata de cei din clasa a 9-a. dani.user, on 19 mai 2019 - 12:36, said: E chiar atat de criptic codul? |
#77
Posted 25 May 2019 - 13:51
#78
Posted 25 May 2019 - 14:48
Quote
pereche fiindca nici atat nu ofera Quote
Daca nu ma inseala memorie, codul acela l-am scris in Java. Daca l-ai compilat pt jdk 8 , atunci este scala , daca l-ai compilat pt jdk 10+ atunci poate fi si java. Cum ziceam si in alt post, scala si java sunt surori gemene. OriginalCopy, on 19 mai 2019 - 09:33, said:
Te astept cu codul actualizat cu un parametru boolean care schimba intre cele doua strategii. Ca tot esti bun la java. Edited by Iulius-Foyas, 25 May 2019 - 14:48. |
#79
Posted 27 May 2019 - 07:00
dani.user, on 25 mai 2019 - 13:51, said:
Daca nu ma inseala memorie, codul acela l-am scris in Java. Si a trebuit sa-mi definesc propria clasa pentru pereche fiindca nici atat nu ofera in biblioteca standard. Asa ca, dpdv al intelegerii codului e mult mai bine sa folosesti o clasa Range(begin, end) decit Pair(first, second) de exemplu. Pe de alta parte, daca chiar vrei sa folosesti asa ceva, exista toate prostiile din univers in bibliotecile Apache... |
#80
Posted 01 June 2019 - 15:59
dani.user, on 25 mai 2019 - 13:51, said:
Daca nu ma inseala memorie, codul acela l-am scris in Java. Si a trebuit sa-mi definesc propria clasa pentru pereche fiindca nici atat nu ofera in biblioteca standard. Idiomul cu diamond operator new Clasa<>(...) nu merge folosit decat in ceva gen Clasa<String, Integer> = new Clasa<>(); Comparator.comparing cu un singur parametru necesita un "key extractor" adica o expresie lambda sau method reference(ex. ce face referire la un membru fie ce are natural ordering, fie ce implementeaza comparable - sau poti baga custom ca al doilea paramentru) ... ar fi ceva gen Comparator.comparing(Elev::getClasa).thenComparing(Elev::getMedie); direct pe ceva colectie de Elev |
#81
Posted 01 June 2019 - 18:30
adamsd, on 01 iunie 2019 - 15:59, said:
Idiomul cu diamond operator new Clasa<>(...) nu merge folosit decat in ceva gen Clasa<String, Integer> = new Clasa<>(); Atunci de ce codul de mai jos compileaza fara probleme (cu OpenJDK 11)? public class Test { static class Foo<A, B> { public Foo(A a, B b) { this.a = a; this.b = b; } private A a; private B b; } private static void testFoo(Object foo) { } public static void main(String args[]) { testFoo(new Foo<>("Hello", 1)); } } adamsd, on 01 iunie 2019 - 15:59, said: fie ce implementeaza comparable Ma asteptam sa se inteleaga din nume ca a mea clasa ComparablePair implementeaza Comparable Edited by dani.user, 01 June 2019 - 18:31. |
#82
Posted 01 June 2019 - 22:19
dani.user, on 01 iunie 2019 - 18:30, said:
Atunci de ce codul de mai jos compileaza fara probleme (cu OpenJDK 11)? dani.user, on 01 iunie 2019 - 18:30, said:
Ma asteptam sa se inteleaga din nume ca a mea clasa ComparablePair implementeaza Comparable |
|
Anunturi
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users