Java数据类型:
基本数据类型又被称为主类型,并且每个主类型都有相对应的“封装器类型”。
boolean-1位、char-4位、byte-8位、short-16位、int-32位、long-64位、float-32位、double-64位。
高版本Java中新加两个高精度数字类型--BigInteger和BigDecimal. 它们只有“封装器类型”没有主类型。
Java类型转换:
简单数据类型转换:
- 隐式类型转换需要满足的条件:1、目标类型与源类型兼容。如:float与int兼容,float不与char兼容;2、目标类型大于源类型。如:double可直接存放int, 反之不行。
- 显式类型转换:在表达式中把类型值放在括号里将其后的值转换为括号中的类型。如:(int) 3.7 = 3, (double) 3 = 3.0. 注意:浮点型转整数型直接截取而不是四舍五入。
- 包装过渡类型转换:Java共有8个包装类,为Boolean, Character, Byte, Short, Integer, Long, Float, Double. 用包装类可以实现类型转换。如:
float f = 100.00f,
Float f1 = new Float(f);
double d1 = f1.doubleValue();
字符与其他类型转换:
字符和int可以直接用显式类型转换,也可以用Character的getNumericValue(char ch)方法实现char转int.
字符串与其他类型转换:
String转基本数据类型可以用包装类实现,基本数据类型转String有两种实现方法:1、包装类的toString()方法;2、String的valueOf()方法。
//String 转 int
int i = Integer.parseInt("123");
int ii = Integer.valueOf("12");
//int 转 String
String s1 = String.valueOf(123);
String s2 = Integer.toString(i);
Java数组:
Java数组的创建有三个步骤:
- 声明数组名称和类型 double[] a;
- 创建数组 a = new double[N];
- 初始化数组元素 for(int i=0;i<N;i++) a[i] = 0;
上面是创建数组的完整形式,下面是简写形式:
• double[] a = new double[N];
• double[] a = {1,2,3,4,5};
数值类型默认初始值为0,布尔类型默认初始值为false.
注意起别名和复制数组的区别:
- 数组名表示的是整个数组,如果我们将一个数组变量赋值给另一个变量,那么两个变量会指向同一个数组。
- 如果想将数组复制一份,应该声明并创建一个新数组,然后将数组中元素挨个复制到另一个数组中。
因为Java方法中的参数是值传递,这意味着数组参数将会是原数组的别名,方法中能够改变原数组的值。例如Array.sort()就可以将一个数组排序。
Java数组会进行范围检查,不可访问数组外的空间。