【Java】基本类型(以int为例)、String、字符数组之间的互相转换

一、int ——> String

       1、int 类型数据 + " "(空字符串)

       2、将 int 用包装类 Integer 接收,然后用 Integer 的方法  public String toString()

       3、使用 String 类的方法 public static String valueOf(int i)

        int num = 1314;
        // 第一种方法
        String str1 = num +"";       // "1314"
        // 第二种方法
        Integer num1 = num;
        String str2 = Integer.toString(num1);   // "1314"
        // 第三种方法
        String str3 = String.valueOf(num);    // "1314"

二、String ——> char[]

       1、String 类的方法 public char[] toCharArray()

        char[] chars = str1.toCharArray();  // {'1', '3', '1', '4'}

三、char[] ——> String

       1、String 类的有参构造方法,参数为字符数组:public String(byte[] bytes)

       2、String 类的方法 public static String valueOf(char[] data)

        char[] charArray = {'1', '3', '1', '4'};
        String string1 = new String(charArray);      // "1314"
        String string2 = String.valueOf(charArray);    // "1314"

四、String ——> int

       1、Integer 类的静态方法 public static int parseInt(String s) 

        String s = "1314";
        int number = Integer.parseInt(s);  // 1314

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个可用的 Java 函数示例,可以实现 IPv4 和 IPv6 字符串、int 和 byte 数组之间的相互转换: ```java import java.net.Inet4Address; import java.net.Inet6Address; import java.net.InetAddress; import java.net.UnknownHostException; import java.nio.ByteBuffer; public class IPConverter { public static int bytesToInt(byte[] bytes) { return ByteBuffer.wrap(bytes).getInt(); } public static byte[] intToBytes(int i) { return ByteBuffer.allocate(Integer.SIZE / 8).putInt(i).array(); } public static byte[] ipv4ToBytes(String ipv4) throws UnknownHostException { InetAddress inetAddress = Inet4Address.getByName(ipv4); return inetAddress.getAddress(); } public static String bytesToIpv4(byte[] bytes) throws UnknownHostException { InetAddress inetAddress = InetAddress.getByAddress(bytes); if (inetAddress instanceof Inet4Address) { return inetAddress.getHostAddress(); } else { throw new UnknownHostException("the input bytes is not a IPv4 address"); } } public static byte[] ipv6ToBytes(String ipv6) throws UnknownHostException { InetAddress inetAddress = Inet6Address.getByName(ipv6); return inetAddress.getAddress(); } public static String bytesToIpv6(byte[] bytes) throws UnknownHostException { InetAddress inetAddress = InetAddress.getByAddress(bytes); if (inetAddress instanceof Inet6Address) { return inetAddress.getHostAddress(); } else { throw new UnknownHostException("the input bytes is not a IPv6 address"); } } } ``` 使用示例: ```java String ipv4 = "192.168.0.1"; byte[] ipv4Bytes = IPConverter.ipv4ToBytes(ipv4); int ipv4Int = IPConverter.bytesToInt(ipv4Bytes); System.out.println("IPv4 to bytes: " + ipv4Bytes); System.out.println("IPv4 to int: " + ipv4Int); System.out.println("Bytes to IPv4: " + IPConverter.bytesToIpv4(ipv4Bytes)); String ipv6 = "fe80::1"; byte[] ipv6Bytes = IPConverter.ipv6ToBytes(ipv6); System.out.println("IPv6 to bytes: " + ipv6Bytes); System.out.println("Bytes to IPv6: " + IPConverter.bytesToIpv6(ipv6Bytes)); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值