• Java中string、int、char之间互相转换


    String转int

    (1)Integer.parseInt(String) 方法

    支持“负号”! 

    1. String str = "123";
    2. int num = Integer.parseInt(str);

    如果这个字符串中间有字母会报错!

    (2)Integer.valueOf(String) 方法

    支持“负号”! 

    1. String str = "123";
    2. int num = Integer.valueOf(str);

    如果这个字符串中间有字母会报错! 

    唯一区别是

    valueOf(String) 方法会返回 Integer 类的对象,而 parseInt(String) 方法返回原始的 int 值。

    我们可以使用 Integer.valueOf(String).intValue() 这样子就可以转为 int 类型!!!

    int转String

    (1)String s = String.valueOf(num) 方法

    1. int num = 123;
    2. String str = String.valueOf(num);

    在使用valueOf() 方法时,注意 valueOf 括号中的值不能为空,否则会报空指针异常(NullPointerException)。  

    (2)String s = Integer.toString(num) 方法

    1. int num = 123;
    2. String s2 = Integer.toString(num);

    (3)String s = "" + num 方法

    1. int num =123;
    2. String str = "" + num;

    使用第三种方法("" + num )相对第一第二种耗时比较大!!!

    String转char

    (1)String.charAt(index) 方法 

    最常用的,甚至可以说,都是这么用的!!! 

    1. String str = "abc";
    2. char c = str.charAt(1);

    (2)String.toCharArray() 方法

    有一点点特殊!是将String转化为字符串数组!!!相当于 char[]

    1. String str = "abc";
    2. char[] chars = str.toCharArray();

    char转String

    将char转换为String大致有4种方法!!!

    (1)String.valueOf('c') 方法

    1. char c = 'a';
    2. String str = String.valueOf(c);

    (2)String.valueOf(new char[] {'a', 'b', 'c'}) 方法

    和上面的基本一样,都是用 valueOf() 方法,只不过是参数不一样!!!

    1. char[] c = {'a','b','c'};
    2. String str = String.valueOf(c);

    (3)Character.toString('c') 方法

    Character.toString(char)方法实际上直接返回String.valueOf(char)

    (4)"" + 'c' 

    1. char c = 'a';
    2. String str = "" + c;

    虽然这个方法很简单,但这是效率最低的方法

    因为String类是 final 属性

    "" + 'c' 时候需要创建新的 String 类 ,如果进行很多次拼接则要创建很多个类虚拟机栈可能会溢出

    int转char

    1. int number = 9;
    2. char cNumber = (char) (number + '0');
    3. System.out.println(cNumber);

    9 + '0':0的ascall值为48,9+48 = 57,57对应的ascall是'9' 

    char转int

    1. char c = '3';
    2. int num = c - '0';
    3. System.out.println(num);

    '3' - '0': 相当于ascall值的51-48 = 3,将将其强转为int,就是3!

  • 相关阅读:
    CNN-卷积核大小是奇数的原因
    汇川IT7000系列HMI使用脚本实现画面跳转时自动切换手自动模式
    登录框Tricks
    【云原生K8S】kubeadm部署kubernetes集群
    XXXSpringMVC“框架的简单创建与使用,快速上手;
    Npm的一些镜像地址-复制粘帖
    免费IP代理靠谱吗?靠谱的IP代理有哪些?
    [JS真好玩] 表格不支持排序?用4行JS排序!两种方案:基于flex order或replaceChildren
    数据分析框架1.0 从黄金思维圈到万能三步走
    rabbitMQ学习-发布和确认
  • 原文地址:https://blog.csdn.net/weixin_43715214/article/details/127992022