输出数据的格式控制

输出控制符 针对的数据类型
%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