1.数据类型
1>基本数据类型
字符型,整数型,浮点型(带有小数),布尔型
| 关键字 | 占用内存(字节) | 取值范围 |
|---|---|---|
| char(字符型) | 2 | 0~65535 |
| byte(字节型) | 1 | -2^7~2^7-1 |
| short(短整型) | 2 | -2^15~2^15-1 |
| int(整型) | 4 | -2^31~2^31-1 |
| long(长整型) | 8 | -2^63~2^63-1 |
| float(单精度浮点型) | 4 | 1.4013E-45~3.4028E+38 |
| double(双精度浮点型) | 8 | 4.9E-324~1.7977E+308 |
| boolean(布尔型) | 1 | true,false |
①默认类型
整数型默认为int,浮点型默认为double
②转换问题
隐式转换(数据范围从小到大)
例如两个不同类型的数字相加
int + short 得出的结果为int类型的数字
强制转化(数据范围从大到小)会损失精度
byte b=(byte) 20; //将一个int类型的数字转换为字节型
③包装类
A>为什么使用包装类
基本数据类型使用起来虽然很方便,但是没有对应的方法对他们进行操作,使用一个类将这些基本的数据类型封装起来,可以使用类中的方法对数据进行操作,无法进行直接操作运算,类叫做包装类。
| 基本类型 | 对应的包装类 |
|---|---|
| char | Character |
| byte | Byte |
| short | Short |
| int | Integer |
| long | Long |
| float | Float |
| double | Double |
| boolean | Boolean |
B>装箱与拆箱
装箱:把基本数据类型转化为包装类
拆箱:把包装类转换为基本数据类型
可以实现自动拆装箱
Integer integer=10; //自动装箱
Integer integer2=new Integer(10); //手动装箱 构造方法
Integer integer3=Integer.valueOf(10); //Integer中的静态方法
int i=integer; //自动拆箱
int i2=integer.intValue(); //手动拆箱
C>数据类型的转换(以String和int转换为例)
//将String->int
String str="100";
int i=Integer.parseInt(str);
//将int->String
int i=100;
String str=Integer.toString(i);
String str2=i+"";
String str3=String.valueOf(i);
④键盘的录入和控制台的打印
在进行接下来的讲解之前,先对键盘录入和控制台的打印进行讲解
import java.util.Scanner;
public class First {
public static void main(String[] args) {
//util中的一个类,用来进行键盘录入
Scanner scanner=new Scanner(System.in);
System.out.println("输入值:");
//输入整数,浮点数,布尔类型等等
int a=scanner.nextInt();
double d=scanner.nextDouble();
boolean b=scanner.nextBoolean();
System.out.println(a+"---"+d);
//在控制台进行打印,并于下一次输出之间有一个换行
System.out.println(b);
}
}
/*
运行结果:
输入值:
1 1.0 true
1---1.0
true
*/
⑤三元表达式
true?a : b; 即当第一表达式为true时,输出a,否则输出b
public class Second {
public static void main(String[] args) {
int a=1,b=3,c;
c=(a>b)?a:b;//a比b小,所以表达式为假,将b的值赋给c
System.out.println(c);
}
}
/*
运行结果:
3
*/
⑥自增(++),自减(--)
public class HelloWorld {
public static void main(String[] args) {
int a=3,b,c;
//(++,--)单独使用 放在前后效果一样
b=a++;
//c=++a;
System.out.println("b:"+b);
//System.out.println("c:"+c);
//参与其他操作时
System.out.println("---------------");
int d=5,e,f;
System.out.println("d:"+d);
e=++d;//先进行自增再赋值
System.out.println("d:"+d+"---e:"+e);
System.out.println("---------------");
System.out.println("d:"+d);
f=d++;//先进行赋值再自增
System.out.println("d:"+d+"---f:"+f);
}
}
/*
运行结果:
b:3
---------------
d:5
d:6---e:6
---------------
d:6
d:7---f:6
*/
2>引用类型
字符串,数组,接口,类
文章转载自计算机EL,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




