java中基本数据类型转化以及字符串之间的转化

简介: java中基本数据类型转化以及字符串之间的转化

4.各种数据类型之间的转换


java中存在八种基本数据类型

  • byte:8位,最大存储数据量是255,存放的数据范围是-128~127之间。
  • short:16位,最大数据存储量是65536,数据范围是-32768~32767之间。
  • int:32位,最大数据存储容量是2的32次方减1,数据范围是负的2的31次方到正的2的31次方减1。
  • long:64位,最大数据存储容量是2的64次方减1,数据范围为负的2的63次方到正的2的63次方减1。
  • float:32位,数据范围在3.4e-45~1.4e38,直接赋值时必须在数字后加上f或F。
  • double:64位,数据范围在4.9e-324~1.8e308,赋值时可以加d或D也可以不加。
    由于小数常量的默认类型是double型,所以float类型的后面一定要加f(F)。
  • boolean:只有true和false两个取值。
  • char:16位,存储Unicode码,用单引号赋值。
    注意:
    String类并不是基本数据类,而是一个类(class),是C++、java等编程语言中的字符串。

抽象类Number是BigDecimal、BigInteger、Byte、Double、Float、Integer、Long、Short类的超类

JDk1.6-API

例:Byte 类将基本类型 byte 的值包装在一个对象中。一个 Byte 类型的对象只包含一个类型为 byte 的字段。 此外,该类还为 byte 和 String 的相互转换提供了几种方法,并提供了处理 byte 时非常有用的其他一些常量和方法。当然其他类型也类似。

Boolean类将基本类型为boolean的值包装在一个对象中。

以byte转其他类型为例(包装类过渡类型转化,其他几种类似):

public class gao {    
    static byte     byt=0x01;
    static Byte     Byt=new Byte(byt);//Byte、Double、Float、Integer、Long、Short
    static byte     b=Byt.byteValue();
    static short     s=Byt.shortValue();
    static int         i=Byt.intValue();
    static long     l=Byt.longValue();
    static float     f=Byt.floatValue();
    static double     d=Byt.doubleValue();    
    public static void main(String args[]) {
        System.out.println(byt);
        System.out.println(b);
        System.out.println(s);
        System.out.println(i);
        System.out.println(l);
        System.out.println(f);
        System.out.println(d);      
    }
}

结果:

1
1
1
1
1
1.0
1.0

char与其他类型之间的转化:

public class gao {
    public static void main(String args[]) {
        int a=97;
        char c=(char)a; //整形->char加(char)
        int b=c;        //char->整形可以加(int)也可不加
        System.out.println(c);
        System.out.println(b);
    }
}

结果:

a
97

整形、整形数组、字符串、字符串数组、字符数组之间的转化:

  1. 整形-字符串
  2. 字符串-整形
  3. 字符串-字符串数组
  4. 字符串数组-字符串
  5. 字符串-字符数组
  6. 字符数组-字符串
  7. 整形数组-字符串
  8. 字符串-整形数组

整形数组转化为字符数组(整形数组先转为字符串、字符串转为字符数组)

字符数组转化为整形数组(字符数组转为字符串、字符串转化为整形数组)

1.其他基本类型向字符串转化:

  • 将基本数据类型与空字符串(" ")连接(+)即可获得其所对应的字符串
  • 调用String类中的valueOf()方法返回相应的字符串
  • 使用包装类的toString()方法
public class gao {
    public static void main(String args[]) {
        int i=123;
        String str1=i+"";
        String str2=String.valueOf(i);
        String str3=Integer.toString(i);
        System.out.println(str1);
        System.out.println(str2);
        System.out.println(str3);       
    }
}

结果:

123
123
123

2.字符串向其他基本类型转化:

  • 调用基本数据类型对应的包装类中的方法ParseXXX(String)
  • 对应包装类型的valueOf(String)
public class gao {
    public static void main(String args[]) {
        String str="123";
        int a=Integer.parseInt(str);
        int b=Integer.valueOf(str);
        System.out.println(a);
        System.out.println(b);
    }
}

结果:

123
123

如果需要将一个字符串转换成为一个数值类型数据,那么需要注意的是,字符串中得有符合数值类型的数字,否则将无法转换。

如:

public class gao {
    public static void main(String args[]) {    
            String str="123abc";
            int a=Integer.parseInt(str);            
            System.out.println(a);      
    }
}//则会报错

 

5.字符串转字符数组

3.字符串转字符串数组

public class gao {
    public static void main(String args[]) {
        String str = "abcbcddef";
        char[] ch=str.toCharArray();
        for(int i=0;i<ch.length;i++) {
            System.out.println(ch[i]);
        }       
        String[] arr=str.split("");
        for(int i=0;i<arr.length;i++) {
            System.out.println(arr[i]);
        }
    }
}

//当然 也可以用循环依次放入,

//取得字符串的某个元素用 String.charAt(i); 返回char

char[] cha= new char[str.length()];
for(int i =0;i<str.length();i++) {
     cha[i] = str.charAt(i);
}

4.字符串数组转字符串

public class gao {
    public static void main(String args[]) {
        String[] str={"abc","bcd","def"};
        StringBuffer SB=new StringBuffer();
        for(int i=0;i<str.length;i++){
            SB.append(str[i]);
        }
        String s=SB.toString();
        System.out.println(s);
    }
}//输出abcbcddef

6.字符数组转字符串

(1).
public class gao {
    public static void main(String args[]) {
        char[] data={'a','b','c'};
        String s=new String(data);
    }
}//输出abc
(2).
public class gao {
    public static void main(String args[]) {
        char[] data={'a','b','c'};
        String string =String.copyValueOf(data);
}
}//输出abc

7.整形数组转化为字符串

public class gao {
    public static void main(String args[]) {
        int[] a= {1,2,3,4};
        StringBuffer sb=new StringBuffer();
        for(int i=0;i<a.length;i++) {
            sb.append(a[i]);
        }
        System.out.println(sb);
    }
}//输出1234

8.字符串转化为整形数组(先将字符串转为字符串数组)

public class gao {
    public static void main(String args[]) {
        String str="100200300";
        String[] temp=str.split("");
        int[] result=new int[temp.length];
        for(int i=0;i<temp.length;i++) {
            result[i]=Integer.parseInt(temp[i]);
        }
        for(int i=0;i<result.length;i++) {
            System.out.print(result[i]);
        }
    }
}//输出100200300
相关文章
|
1月前
|
Java
当Java数据类型遇上“爱情”,会擦出怎样的火花?
当Java数据类型遇上“爱情”,会擦出怎样的火花?
47 1
|
3天前
|
Java
java基础(8)数据类型的分类
Java数据类型分为基本数据类型(8种)和引用数据类型。基本类型包括byte, short, int, long, float, double, boolean, char。每种类型有固定占用空间大小,如int占用4字节。字符编码如ASCII和Unicode用于将文字转换为计算机可识别的二进制形式。
14 2
|
1月前
|
Java 程序员
Java数据类型:为什么程序员都爱它?
Java数据类型:为什么程序员都爱它?
40 1
|
1月前
|
存储 算法 Java
我与Java数据类型的那场“风花雪月”
我与Java数据类型的那场“风花雪月”
36 0
|
1月前
|
存储 自然语言处理 Java
Java数据类型:为何它如此“撩人”?
Java数据类型:为何它如此“撩人”?
36 0
|
3天前
|
存储 Java Windows
java基础(9)数据类型中的char类型以及涉及到的转义字符
Java中的char类型可以存储一个中文字符,因为它占用两个字节。转义字符允许在代码中使用特殊字符,例如`\n`表示换行,`\t`表示制表符,`\\`表示反斜杠,`\'`表示单引号,`\"`表示双引号。可以使用`\u`后跟Unicode编码来表示特定的字符。
16 2
java基础(9)数据类型中的char类型以及涉及到的转义字符
|
2天前
|
存储 移动开发 Java
java核心之字符串与编码
java核心之字符串与编码
|
3天前
|
Java
java基础(10)数据类型中的整数类型
Java中的整数类型包括byte、short、int和long。整数字面值默认为int类型,加L表示long类型。整数字面值可以是十进制、八进制(0开头)或十六进制(0x开头)。小容量类型(如int)可自动转换为大容量类型(如long),但大容量转小容量需强制转换,可能导致精度损失。
15 2
|
15天前
|
存储 Java
Java内置数据类型和实例的详解
Java内置数据类型分为基本和引用两类。基本数据类型包括整型(`byte`、`short`、`int`、`long`)、浮点型(`float`、`double`)、字符型(`char`)和布尔型(`boolean`),用于存储简单的数值;引用数据类型则用于存储对象的引用,包括类(如`String`)、接口和数组。掌握这两类数据类型是Java编程的基础。以下示例展示了各种数据类型的使用方法。
|
9天前
|
Java
Java实现:将带时区的时间字符串转换为LocalDateTime对象
通过上述方法,你可以将带时区的时间字符串准确地转换为 `LocalDateTime`对象,这对于处理不需要时区信息的日期和时间场景非常有用。
174 4