2011-04-19 108 views

回答

32

String不是原始数据类型 - 这是一类,引用类型。现在承认它直接支持虚拟机,并且有语言的文字 - 但它仍然不是原始类型。

+5

最近的答案。字符串是一个类,它包含很多方法。例如,您可以不对原始数据类型调用方法调用。一个字符串包含一个'byte []'数组的值:'{'v','a','l','u','e'}' – 2011-04-19 13:15:04

+0

我怎么能错过它。谢谢。 – enchance 2011-04-19 13:18:41

2

,因为它是一个类,而不是原始数据类型。字符串实际上是一个字符数组。

+8

字符串*有*字符数组。这是一个重要的区别!在Java中,String是一个对象,而不是char数组 – 2011-04-19 13:23:59

+0

试图保持它干净和简单。一个人可以用“代表”来代替“是”,涵盖,涵盖... – 2011-04-19 16:09:46

+0

那么,为什么你没有做到这一点? '干净简单'不排除'不正确'。 – EJP 2016-08-16 05:42:22

1

虽然编译器对String有特殊的支持,例如将字符串文字转换为String实例,并执行String连接,但String不是原始类型,而是Class。按照惯例,类名以大写字母开头。

查看原始类型和引用类型的描述JLS部Types,Values and Variables

-2

字符串是在java和基准数据type.String一类是字符的阵列,所以它不是一个基本数据类型。

-1

字符串在Java借用C语法,Java编译器需要字符串作为字符数组,所以字符串是由字符数组基本数据类型由一个抽象数据类型

-1

字符串是java.lang中包但in.java类al类也被认为是数据类型,所以我们可以采取字符串数据类型也.. 我们can.cal类是用户定义和数据类型。这是因为用户可以创建一个类。 String a; A为变量f的数据类型“串”

0

字符串是一个非premitive数据类型。您可以使用字符串如下

int monthNumber = 2; 
String monthName = ""; 
switch(monthNumber) { 
    case 1: 
     monthName = "January"; 
     break; 
    case 2: 
     monthName = "February"; 
     break; 
    case 3: 
     monthName = "March"; 
     break; 
    case 4: 
     monthName = "April"; 
     break; 
} 
System.out.println("The month is " + monthName);