Last active
October 22, 2017 19:08
-
-
Save gracietti/5b7fab36cd080cd0707d098d09588ee1 to your computer and use it in GitHub Desktop.
Contador de Like. Enviado como tarefa para a Turma I do Projeto Mão na Massa no dia 22/Out/2017.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Nessa tarefa, nos queremos saber quantos likes cada post recebeu. | |
// Já temos alguns dados de exemplo criados, simulando que alguns usuários deram like em alguns posts. | |
// Agora queremos passar o ID de um post e saber o total de liks recebidos por ele. | |
// Com essa atividade, vocês já relembrarão alguns comandos de lógica de programaço em KOTLIN. | |
// Dica: para implementar o contador, vocês precisaro usat FOR e IF. | |
fun main(args: Array<String>) { | |
// Essa é uma lista com alguns exemplos de dados | |
val listaDeLikes = listOf( | |
RelacaoDeLike(323423,1), //Usuario 323423 deu like no post 1 | |
RelacaoDeLike(234234,1), //Usuario 234234 deu like no post 1 | |
RelacaoDeLike(456456,1), //Usuario 456456 deu like no post 1 | |
RelacaoDeLike(233424,2), //Usuario 233424 deu like no post 2 | |
RelacaoDeLike(466656,2), //Usuario 466656 deu like no post 2 | |
RelacaoDeLike(536853,2), //Usuario 536853 deu like no post 2 | |
RelacaoDeLike(456456,2), //Usuario 456456 deu like no post 2 | |
RelacaoDeLike(464645,3), //Usuario 464645 deu like no post 3 | |
RelacaoDeLike(787423,3), //Usuario 787423 deu like no post 3 | |
RelacaoDeLike(685344,3), //Usuario 685344 deu like no post 3 | |
RelacaoDeLike(987987,3) //Usuario 987987 deu like no post 3 | |
) | |
//Aqui eu coloco o ID do post que eu quero consultar | |
val postId = 2 | |
//Essa variável vai armazenar o resultado do contador de likes | |
val totalDeLikes = contarNumeroDeLikes(postId, listaDeLikes) | |
//E agora eu imprimo o resultado na tela | |
println(">>> Aqui está o resultado: o post $postId tem um total de $totalDeLikes likes.") | |
} | |
fun contarNumeroDeLikes(postId: Int, listaDeLikes: List<RelacaoDeLike>): Int { | |
var totalDeLikes = 0 | |
//Imprementar o contador | |
// Para cada elemento da `listaDeLikes`, vou precisar verificar se o `postId` é igual ao `postId` que eu quero consultar | |
// ESCREVA SEU CODIGO AQUI :) | |
//Retorno o resultado com o total de likes | |
return totalDeLikes | |
} | |
//Essa classe estaria armazenada no banco de dados no backend (nuvem) | |
class RelacaoDeLike(userId: Int, postId: Int): Object() { | |
val userId = userId | |
val postId = postId | |
init { | |
//Esse texto será impresso sempre que uma nova relação de likes for criada | |
println("Foi criado uma nova relação de like entre o usuário $userId e o post $postId") | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment