o operador ?: testa a condicao antes do ?, caso ela seja verdadeira, exp1 eh retornado, caso contrario exp2 eh retornado, ex:
intx=5==5?5:7;
equivale a
intx;if(5==5)x=5;elsex=7;
no seu codigo, ele vai testar 10 < 8, o que vai resultar em false, entaum sera testado o boolean log (no seu codigo tem um ?: dentro de outro ?: ), se log for verdadeiro, retornara 3, caso contrario retornara 300 / dis, independentemente do resultado, sera multiplicado por 10…