Percebi que sempre usei int e doubles, não importa o quão pequeno ou grande o número precise ser. Portanto, em java, é mais eficiente usar byte
ou em short
vez de int
e em float
vez de double
?
Portanto, suponha que tenho um programa com muitos ints e duplos. Valeria a pena examinar e mudar meus ints para bytes ou shorts se eu soubesse que o número caberia?
Eu sei que o java não tem tipos não assinados, mas há algo extra que eu pudesse fazer se soubesse que o número seria positivo apenas?
Por eficiente, quero dizer principalmente processamento. Eu presumiria que o coletor de lixo seria muito mais rápido se todas as variáveis tivessem metade do tamanho e que os cálculos provavelmente seriam um pouco mais rápidos também. (Acho que, já que estou trabalhando no Android, preciso me preocupar um pouco com a memória RAM também)
(Eu presumo que o coletor de lixo lida apenas com objetos e não primitivos, mas ainda exclui todos os primitivos em objetos abandonados, certo?)
Eu tentei com um pequeno aplicativo Android que tenho, mas realmente não notei nenhuma diferença. (Embora eu não tenha medido nada "cientificamente".)
Estou errado em presumir que deveria ser mais rápido e eficiente? Eu odiaria mudar tudo em um programa enorme para descobrir que perdi meu tempo.
Valeria a pena fazer desde o início quando eu começar um novo projeto? (Quer dizer, acho que qualquer pequena parte ajudaria, mas então, novamente, se sim, por que não parece que alguém faz isso.)