您的位置:

java各种类型的默认初始化值(java默认初始化和显示初始化)

本文目录一览:

Java各类型的初始值

基本数据类型作为类的成员时,

即使没有对其进行初始化,

java也会确保它有一个默认值,如下:

基本类型的初始值 基本类型 默认值

boolean false

char \u0000(null)

byte (byte)0

short (short)0

int 0

long 0L

float 0.0f

double 0.0d

上面的默认值,是当变量作为类的成员使用时才有的,

java这样做是保证基本类型的成员变量得到初始化,

防止产生程序错误,

但这些值在实际的程序中可能都是不合理的,

所以最好明确的给出初始值。

上面的默认值对在程序中非成员变量就不适用了,

非成员变量如果不明确给出初始值,就可能是任何值。

在java程序编译时会提示你一个错误,而不是c++中的警告。

至于那些应用类型,像数组,对象啦,有些复杂,根据你的类型而定,对象一般弄人为null,

数组根据你的类型,按照基本数据类型的默认值来初始化……

明白了么?

本文来自CSDN博客,转载请标明出处:

Java:关于基本数据类型的默认值,以布尔为例

波尔类型的默认值是false;

其余的7种基本类型默认值:

byte是 (byte)0;

short是 (short)0;

int是 0;

long是 0L;

float 是0.0f;

double 是0.0d;

char是 \u0000。

java中string类型变量的默认初始值是什么?

java中string类型变量的默认初始值是为null。

string a,b;

声明string类型变量,不需要考虑字符串分配的空间大小,并且在字符串初始化上也有更多选择。

1.string  a("the dog");

2.string a;

a="the dog";

3.string a="the dog";

可也可以把重新给string对象赋值而无须担心是否会导致容量不够,比如:

string a="dog";

a="persian";

a能“自动”扩容,存储"persian"

string对象的赋值和比较操作不用像C那样调用库函数也能完成。

1.用“==”比较字符串,如果两个字符串内容完全一致,返回true,否则flase,在c中需要调用strcmp函数

2.“=”把一个变量复制到另一个,将复制字符串内容而非指针值。

3.“+”将两个字符串连接起来

但 string str = "the "+" dog";却无法编译通过,+可以在两个string对象或一个string和一个C字符串之间合并,但不支持两个C字符串合并,在此,字符串字面值仍然属于C字符串范畴。

string类型单个字符的访问

用来访问一个C字符串里的单个字符的语法同样也可以用来访问一个string对象里的单个字符。

string dog="Mac";

coutdog[0]endl;//访问第1个字符dog[0]

字符串长度应该使用size成员函数,不同于C使用strlen:

int length=dog.size();

字符串输入

string dog;

cin dog;

输入流操作符()为string类型的变量读入数据,但不知是:无论来自键盘的字符有多少,只能返回第一个白空格字符(空格,制表符,换行符)之前的那些字符。

可以使用getline(cin,dog);

把一整行字符的输入放到一个string变量里。

在java中八种基本数据类型在数组初始化中默认值是多少

Java定义了8个简单的数据类型:字节型(byte),短整型(short),整型(int),长整型(long),字符型(char),浮点型(float),双精度型(double),布尔型(boolean).

除了boolean默认false,char--〉/u0000,其他的都为0