输出数据的格式控制
输出控制符 | 针对的数据类型 |
---|---|
%d | int,long int,short,byte |
%x,%#x,%X,%#X | int,long int |
%c | char |
%f | float,double |
%s | string |
备注: 在java中没有%ld & %lf,比如float & double 都用%f输出,这是与C/C++不同的
public class TestOutData {
public static void main(String []args) {
int i = 46;
char j ='a';
float k = 3.56412f;
double m = 3.8;
String str = "Hello world!";
/*
2017-12-31 23:32:54 java version 1.8.0_111-b14
输出结果是:
*/
System.out.printf("i = %d\n",i);//i = 46
System.out.printf("i = %x\n",i);//i = 2e
System.out.printf("i = %X\n",i);//i = 2E
System.out.printf("i = %#x\n",i);//i = 0x2e
System.out.printf("i = %#X\n",i);//i = 0X2E
System.out.printf("j = %c\n",j);//j = a
System.out.printf("k = %f\n",k);//k = 3.564120
System.out.printf("m = %f\n",m);//m = 3.800000
System.out.printf("str = %s\n",str);//str = Hello world!
}
}
整型常量
十进制(10) 十六进制(0x10) 八进制(010)
一个常量整数默认是int,若数字过大,必须在末尾加L
浮点常量
一个实数默认为double,若希望是float 可在数字后加f/F
将一个double类型数值赋值给float类型 编译会报错
布尔类型
用boolean表示 不能写成bool 只有ture & false
定义:boolean b = true;
只能参与逻辑关系运算:&& || == != !
备注:
if while for中进行真假判断时只能使用逻辑表达式
if (3)//错误的写法:3>2 必须是表达式
System.out.printf(" %d\n",m);
不同变量存储范围: 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.4E-45-- 3.4E+38 负的前加- double占用 8 个字节 范围:4.9E-324-- 1.7E+308 负的前加- char占用 2 个字节 范围:0-- 2^16-1unicode编码 boolean占用 1 个字节 范围:true false
数据类型转化
1.不能对boolean进行类型转换
2.在把容量大的类型转换为小的时必须使用强制类型转换
3.整型 实型 字符型数据可混合运算
转换从低级到高级
byte>>char>>int>>long>>float>>double