基本数据类型
自动类型转换
特点:代码不需要进行特殊处理,自动完成。
规则:数据范围从小到大
注意:
- byte,short,char之间不会相互转换,他们三者在计算时是首先转化为int类型(自动类型提升)
- 布尔类型不能和其他数据类型进行运算,布尔类型的计算结果只能是turn或者flast
- 任何基本数据类型的值和字符串String进行连接运算时,基本数据类型的值将自动转化为字符串类型
public class hellow{
public static void main (String[] args) {
int f =17;
String g="123"
System.out.println(f+g);
}
}
运行结果:17123
强制类型转换
特点:需要代码强制完成
class Hello{
public stayic void main (String[] args ) {
int a =1 ; //1赋值给a
// byte b = a ; 这样程序会报错,因为a是int类型,b是byte类型,大类型赋值给小类型会导致数据丢失 }
byte b= (byte)a //在较大数据类型前,标注要转类类型,即强制转换
}
输入,输出数据
输入基本型数据
Scanner类, 可以使用该类创建一个对象。
Scanner reader = new Scanner(System.in)
//reader是变量名 new 实例化,把Scanner实例化,System.in 系统输入
reader对象可以调用实例化后Scanner里的方法,输入各种的基本类型数据
nextBoolean() | nextByte() | nextShort() | nextInt() |
---|---|---|---|
nextLong() | nextFloat() | nextDouble() |
输出基本型数据
System.out.println() | System.out.print() |
---|---|
可输出串值,表达式的值。可以使用“+”将表达式或常数值与一个字符串并置一起输出 | |
输出换行 | 输出不换行 |
注意,在使用这两个输出类型时,输出字符串常量时中间不可以出现回车,否则无法通过编译。
若输出字符长,可进行拆分,用“+”将他们相连接
格式化输出
print函数数据输出
System.out.printf("格式控制部分", 表达式1,表达式2,...表达式)
格式控制部分由格式控制符号和普通字符,格式符号用来输出表达式的值。
%d | %c | %f | %s |
---|---|---|---|
输出int类型的数据 | 输出char型的数据 | 输出浮点型数据,小数部分最多保留六位 | 输出字符串数据 |
输出数据时也可以控制数据在命令行的位置。
%md | &m.nf | |
---|---|---|
输出的int型数据占m列 | 输出的浮点型数据占m列,小数点保留n位 | |