Java语言中的String类跟byte、short、long、int、float、double、char、boolean等八大数据类型有什么不同?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java语言中的String类跟byte、short、long、int、float、double、char、boolean等八大数据类型有什么不同?相关的知识,希望对你有一定的参考价值。

String属于引用数据类型,这就是Java提供的字符串类,内部封装了很多方法(函数),简洁又安全
那八种属于基础数据类型;这八种也有对应的引用数据类型
int对应Integer
char对应Character
其他都是首字母大写
例如long对应Long
引用类型是将基础数据类型进行封装,提供更丰富的功能
参考技术A String属于引用数据类型,这就是Java提供的字符串类,内部封装了很多方法(函数),简洁又安全
那八种属于基础数据类型;这八种也有对应的引用数据类型
int对应Integer
char对应Character
其他都是首字母大写
例如long对应Long
引用类型是将基础数据类型进行封装,提供更丰富的功能
参考技术B String属于引用数据类型,这就是Java提供的字符串类,内部封装了很多方法(函数),简洁又安全
那八种属于基础数据类型;这八种也有对应的引用数据类型
int对应Integer
char对应Character
其他都是首字母大写
例如long对应Long
引用类型是将基础数据类型进行封装,提供更丰富的功能追问

谢谢,说得很清楚了。

本回答被提问者采纳
参考技术C String属于引用数据类型
其他都是基本数据类型。
参考技术D java 中String 是个对象,是引用类型
基础类型与引用类型的区别是,基础类型只表示简单的字符或数字,引用类型可以是任何复杂的数据结构
基本类型仅表示简单的数据类型,引用类型可以表示复杂的数据类型,还可以操作这种数据类型的行为
java虚拟机处理基础类型与引用类型的方式是不一样的,对于基本类型,java虚拟机会为其分配数据类型实际占用的内存空间,而对于引用类型变量,他仅仅是一个指向堆区中某个实例的指针。字符串变量存储堆heap中,而基本数据类型存储在栈stack中.

java中String类的构造函数

String类中的构造函数
String(); 构造一个空字符串对象
String(byte[] bytes); 通过byte数组构造字符串对象
String(byte[] bytes,int offset,int length);通过byte数组,从offset开始,总共length长的字节构造字符串对象
String(char[] value); 通过char数组构造字符串对象
String(byte[] char,int offset,int length);通过char数组,从offset开始,总共length长的字节构造字符串对象
String(String original); 构造一个original的副本,拷贝一个original
String(StringBuffer buffer);通过StringBuffer数组构造字符串对象

public class StringClassTest {
    public static void main(String[] args) {
        // 字节数组
        byte[] bArray = { ‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘e‘, ‘f‘, ‘g‘, ‘h‘ };
        // 字符数组
        char[] cArray = { ‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘e‘, ‘f‘, ‘g‘, ‘h‘ };
        //声明一个StringBuffer
        StringBuffer strbuf = new StringBuffer("strbuf"); 
        // 实例一个String对象
        String str = new String("str abcd");
        //实例一个String对象 通过一个btye数组构造字符串对象(字节数组)
        String strb = new String(bArray);
        //实例一个String对象 通过一个char数组构造字符串对象(字符数组)
        String strc = new String(cArray);
        //实例一个String对象 通过一个char数组构造字符串对象(字节数组,开始的数据,截得数据长度)
        String strbIndex = new String(bArray, 1, 5);
        //实例一个String对象 通过一个char数组构造字符串对象(字符数组,开始的数据,截得数据长度)
        String strcIndex = new String(cArray, 1, 2);
        //实例一个String对象 通过一个StringBuffer对象构造字符串对象 
        String strbuff = new String(strbuf);
        System.out.println("实例一个无参String对象:  "+str);
        System.out.println("实例一个带byte数组参数String对象:  "+strb);
        System.out.println("实例一个带char数组参数String对象:  "+strc);
        System.out.println("实例一个带byte数组参数String对象,截取从1开始截取,截5位:  "+strbIndex);
        System.out.println("实例一个带char数组参数String对象,截取从1开始截取,截2位:  "+strcIndex);
        System.out.println("实例一个带StringBuffer参数String对象:  "+strbuff);
        // 如果是字节类型,将输出地址
        // System.out.println(by);
        // 如果是字符类型,将输出字符
        // System.out.println(c);
    }
}









































以上是关于Java语言中的String类跟byte、short、long、int、float、double、char、boolean等八大数据类型有什么不同?的主要内容,如果未能解决你的问题,请参考以下文章

每日五题

Go语言string和byte以及rune

int和Integer有什么区别?

java中String类型的如何转为byte[]

java里面byte数组和String字符串怎么转换

Java - byte[] 和 String互相转换