Java常用数据类型转换

本文详细介绍了Java中基本数据类型之间的转换,包括int到char、char到int的转换,以及如何将基本数据类型转换为String。同时,展示了如何将数组转化为List集合,如int[]、char[]和String[]的转换方法。理解这些转换对于Java编程至关重要。
摘要由CSDN通过智能技术生成

概要
本篇主要讲解Java中的常用的数据类型转换,以Win10+Java8为例!

1、基本数据类型相互转化

public class Test {
    public static void main(String[] args) {
        /*
         * int 转 char
         * 当 i < 10, 使用"Character.forDigit(int i, radix)"方法。
         * 当 i >= 10, 使用"String.valueOf(int i).charAt(index)"获取对应位置。
         */
        int i = 1;
        if (Character.isDigit(i)) {
            char i_char = Character.forDigit(i, 10);
        }

        /*
         * char 转 int
         * 仅当char为'1'这种数字类型的char时候,结果应该为数字
         * 当char为'c'这种非数字类型的char时候,结果是该char的ASCII码,这种就不应该叫做"char 转 int"
         */
        char c1 = '1';
        if (Character.isDigit(c1)) {
            int c_int = Character.getNumericValue(c1);
        }
    }
}

2、基本数据类型转String

统一调用String类的valueOf方法,因其内部调用各个对象的转String的方法。

public class Test {
    public static void main(String[] args) {
        int in = 1;
        // byte、short、int: 内部调用"Integer.toString(int i)"方法
        String in_str = String.valueOf(in);
        long lo = 2L;
        // long: 内部调用"Long.toString(Long i)"方法
        String lo_str = String.valueOf(lo);
        char c = 'c';
        // char: 内部调用"new String(data, true)"方法
        String c_str = String.valueOf(c);
    }
}

3、数组转List集合

public class Test {
    public static void main(String[] args) {
        // *** int[] 转 List集合(同样适用于long、double等整型) ***
        int[] intArray = new int[]{1, 2, 3, 4, 5};
        List<Integer> aa = Arrays.stream(intArray).boxed().collect(Collectors.toList());
        // *** char[] 转 List集合 ***
        char[] charArray = new char[]{'h', 'e', 'l', 'l', 'o'};
        List<Character> ee = Arrays.toString(charArray).chars().mapToObj(i -> (char) i).collect(Collectors.toList());
        // *** String[] 转 List集合 ***
        String[] stringArray = new String[]{"this", "is", "my", "book"};
        // 此处转的是java.util.Arrays的内部类ArraysList,非java.util.ArrayList
        List<String> bb = Arrays.asList(stringArray);
        // 通过Java8的流进行转换
        List<String> cc = Stream.of(stringArray).collect(Collectors.toList());
        // 若需要的为ArrayList,可以通过构造器来转换
        ArrayList<String> dd = new ArrayList<String>(Arrays.asList(stringArray)) ;
    }
}

以上就是比较常用的数据类型转换,建议点进源码看看实现机制,其实很多就是最原始的方法,比如"String[] 转 List集合",就是新建了一个ArrayList,然后把String的所有元素加进去了而已。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值