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

发布时间:2022-11-09

本文目录一览:

  1. Java各类型的初始值
  2. Java:关于基本数据类型的默认值,以布尔为例
  3. java中string类型变量的默认初始值是什么?
  4. 在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
  • int0
  • long0L
  • float0.0f
  • double0.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,否则 false。(在 C 中需要调用 strcmp 函数)
  2. = 把一个变量复制到另一个,将复制字符串内容而非指针值。
  3. + 将两个字符串连接起来。 但 String str = "the " + " dog"; 却无法编译通过,+ 可以在两个 String 对象或一个 String 和一个 C 字符串之间合并,但不支持两个 C 字符串合并。在此,字符串字面值仍然属于 C 字符串范畴。

String 类型单个字符的访问

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

String dog = "Mac";
System.out.println(dog[0]); // 访问第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 默认为 falsechar 默认为 \u0000,其他的都为 0