✅ Neste exemplo, o programa solicita ao usuário que digite um endereço IPv4 em formato decimal (por exemplo, “192.168.0.1“). Em seguida, o método converterIPv4ParaBinario()
é chamado para converter o endereço IPv4 decimal em binário. O resultado é exibido na tela.
🍵 Algoritmo…
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
import java.util.Scanner; public class ConversorIPv4 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("Digite o endereço IPv4 (Ex.: 192.167.1.5): "); String ipv4Decimal = scanner.nextLine(); String ipv4Binario = converterIPv4ParaBinario(ipv4Decimal); System.out.println("Endereço IPv4 em binário: " + ipv4Binario); } private static String converterIPv4ParaBinario(String ipv4Decimal) { String[] octetos = ipv4Decimal.split("\\."); StringBuilder binario = new StringBuilder(); for (String octeto : octetos) { int valorDecimal = Integer.parseInt(octeto); String valorBinario = Integer.toBinaryString(valorDecimal); // Adicionar zeros à esquerda, se necessário, para completar 8 bits String valorBinarioCompleto = String.format("%8s", valorBinario).replace(' ', '0'); binario.append(valorBinarioCompleto).append("."); } // Remover o ponto extra no final binario.deleteCharAt(binario.length() - 1); return binario.toString(); } } |
✅ O método converterIPv4ParaBinario()
recebe o endereço IPv4 decimal como uma string e o divide em octetos usando o método split("\\.")
, que utiliza o ponto como delimitador. Em seguida, cada octeto é convertido para seu equivalente binário usando o método Integer.toBinaryString()
. Se necessário, zeros são adicionados à esquerda para completar 8 bits usando String.format()
.
✅ Os octetos convertidos em binário são concatenados com um ponto entre eles, formando o endereço IPv4 em binário. O último ponto é removido antes de retornar o resultado.
Espero que isso ajude!
*Atualizado em 18 de junho de 2023
🐍 Versão em Python:
☕Outra versão em Java utilizando janelas: