java中基本数据类型与String类型有什么区别

2024-11-15 10:43:35
推荐回答(5个)
回答(1):

基本数据类型(如int,boolean,double等)与String的区别在于内存。String是以数组存放的,数组的每一个内容表示字符串的一个字符;int等变量是用几个字节存放的,几种基本类型无非就是字节数量不同而已。

而且对String对象操作会产生一个新的String对象,大大减少了字符串相加的效率,而基本类型则不会。(注:可以通过StringBuilder类操作字符串,加快速度)

但实际上,基本类型可以借助于Object类的toString()方法转换为字符串,字符串也可以通过parseInt()等方法转换为基本类型,例如:

class Transfer{
    public static void main(String[] args){
    }
    
    public static int getInt(String str){
        try{
            int i = str.parseInt();
        }catch(Exception e){
            e.printStackTrace();
        }
        return i;
    }
    
    public static String getString(int i){
        return i.toString();
    }
}

回答(2):

java 中String 是个对象,是引用类型
基础类型与引用类型的区别是,基础类型只表示简单的字符或数字,引用类型可以是任何复杂的数据结构
基本类型仅表示简单的数据类型,引用类型可以表示复杂的数据类型,还可以操作这种数据类型的行为
java虚拟机处理基础类型与引用类型的方式是不一样的,对于基本类型,java虚拟机会为其分配数据类型实际占用的内存空间,而对于引用类型变量,他仅仅是一个指向堆区中某个实例的指针。

回答(3):

从存储位置上来说:
基本数据类型存储在栈区,String属于对象类型存储在堆区。
从参数传递方面来说:
基本数据类型采用的是值传递,而String采用的是引用传递。
不过由于String内部实现采用了final关键字,这就导致对于String的每次更改都是在创建新的String对象,所以如果一个函数对传进来的String类型做了更改实际上是不会影响到传进来前的String对象的值得。

回答(4):

很简单,基本数据类型只有八种,虽然string类型看上去和基本数据类型的用法很相似,但是他是引用数据类型,java中就是这么规定的,个人理解单个字符是char类型,string类型是字符串类型,比基本数据类型要丰富,但是衍生于基本数据类型。你可以看看官方网址。
http://docs.oracle.com/javase/7/docs/api/java/lang/String.html

回答(5):

String类型是字符串