「这是我参与11月更文挑战的第13天,活动详情查看:2021最后一次更文挑战」
Java基本类型共有八种,基本类型可以分为三类,字符类型char,布尔类型boolean以及数值类型byte、short、int、long、float、double。数值类型又可以分为整数类型byte、short、int、long和浮点数类型float、double。JAVA中的数值类型不存在无符号的,它们的取值范围是固定的,不会随着机器硬件环境或者操作系统的改变而改变。实际上,JAVA中还存在另外一种基本类型void,它也有对应的包装类 java.lang.Void,不过我们无法直接对它们进行操作。
基本数据类型与其对应的分装类由于本质的不同,具有一些区别: 基本数据类型只能按值传递,而封装数据类按引用传递,在任何引用使用前,必须为其指定一个对象,否则会报错。 基本数据类型在声明时系统会自动给他分配空间,而引用类型声明时只是分配了引用空间(栈中),必须通过实例化开辟数据空间之后才可以赋值。 数组对象也是一个引用对象,将一个数组赋值给另一个数组时只是复制了一个引用,所以通过某个数组所做的修改在另一个数组中也看的见。 基本数据类型在栈中创建,对于对象类型,对象在堆中创建,对象的引用在栈中创建。基本数据类型由于在栈中,所以效率较高,但是可能会存在内存泄漏问题。 Character是char的包装器,它的构造方法: Character(char ch)其中ch是将封装在Character对象中包装的字符,可以条用charValue()方法 char charValue(),和String一样存储在对象中的字符是一个常量,无法做修改。 Character c=new Character(‘a’); 如果想将字符改成b,只有丢弃原来对象重新创建对象:Character c=new Character(‘b’);
引入基本数据分装类的原因:基本数据类型不是类,不能产生对象,java引进基本数据类型的封装类,以统一的机制处理所有的数据类型
整数类型的封装类
| byte | Byte |
|---|---|
| short | Short |
| int | Integer |
| long | Long |
浮点类型的封装类
| float | Float |
|---|---|
| double | Double |
字符类型的封装类
| char | Character |
|---|
布尔类型封装类
| boolean | Boolean |
|---|
基本数据类型封装类的变量和方法
Integer类的类变量 MAX_VALUE和MIN_VALUE
Integer类的构造方法
public Integer(int value) 用一个int类型的量生成一个Integer对象 Integer i=new Integer(5);
自动装箱(AutoBoxing) Integer i=5;
public Integer(String s) 用一个字符串生成一个Integer对象 Integer i=new Integer("05");
Integer类的非静态方法 public int intValue() 将Integer对象转换成int类型的值 Integer i=5; int value=i.intValue();
自动拆箱(AutoUnboxing) Integer i=5; int value=i;
public String toString() 将Integer对象转换成一个字符串 Integer i=5; String s=i.toString();
public static int parseInt(String s) 把字符串转换成int类型的值 int i=Integer.parseInt("-05");
public static Integer valueOf(String s) 把字符串转换成Integer对象 Integer i=Integer.valueOf("2007");
Character类 构造方法
public Character(char c)
用一个char类型的量生成一个Character对象
Character类中的常用类方法
public static boolean isDigit(char ch)
public static boolean isLetter(char ch)
public static boolean isLetterOrDigit(char ch)
public static boolean isLowerCase(char ch)
public static boolean isUpperCase(char ch)
public static char toLowerCase(char ch)
public static char toUpperCase(char ch)
public static boolean isSpaceChar(char ch)
public class Example{
public static void main(String args[ ]) {
char a[ ]={'a','b','c','D','E','F'};
for(int i=0;i<a.length;i++)
{
if(Character.isLowerCase(a[i]))
a[i]=Character.toUpperCase(a[i]);
else if(Character.isUpperCase(a[i]))
a[i]=Character.toLowerCase(a[i]);
}
for(int i=0;i<a.length;i++)
System.out.printf("%6c",a[i]);
}
}