java03数据类型
强类型语言
要求变量的使用要严格符号规定,所有变量都必须先定义后才能使用
弱类型语言
不严格
Java的数据类型非为两大类
-
基本类型(primitive type)
-
数值类型
-
整型 byte,一个字节-128~127
short两个字节-2768~32767
int4个字节-2147483648~2147483647
long8个字节
-
浮点float4个字节
double8个字节,较常用
-
字符类型char2个字节
-
boolean:占一位只有true和false两个
-
引用类型(reference type)
除了基本类型之外的,包括
-
类
-
接口
-
数组
字节
-
位bit:是计算机内部数据储存的最小单位,11001100是一个八位二进制数
-
字节byte:是计算机中 数据处理 的基本单位,习惯上用大写B来表示
-
1B(byte,字节)=8bit(位)
-
字符:是计算机中使用的字母,数字,字和符号
package demo;
public class Java03 {
//String 字符串
//八大基本数据类型
public static void main(String[] args) {
String a="hello";
int num=10;
//上两行分别为字符串,和整数变量
int num1=10;
//int 最常用
byte num2=12;
short num3=20;
long num4=66L;
//long类型要在数字后面加L;
//下面是浮点数
float num5=50.3F;
//float数字后面要加F
double num6=63.14159;
//字符
char name1 = 'A';
char name2 ='沙';
//char类型只能有一个字符,比如最多一个字母,一个汉字等
//字符串,String不是关键字,是类,比如第六行的代码
boolean flag=true;
boolean flag1=false;
//布尔值boolean:是非
System.out.println(num2);
System.out.println(num);
}
}
package demo;
public class Java04 {
public static void main(String[] args) {
//整数扩展:进制 二进制0b开头 十进制 八进制0 十六进制0x: 0~9,A~F=10~15
int i1=0b10;//二进制0b,后面的10是二进制
int i2=010;//八进制0,后面的10是八进制数
int i3=0xF;//十六进制0x,后面的F是十六进制数,
System.out.println(i1);
System.out.println(i2);//将八进制i2转化为十进制中的数输出
System.out.println(i3);//将八进制i3转化为十进制中的数输出
System.out.println("--------");
//浮点数扩展
//float 有限 离散 舍入误差 大约 接近但不等于
//最好完全使用浮点数比较
float f=0.1f; //0.1
double d=1.0/10; //0.1
float d1=2.3333325456f;
float d2=d1+1;
System.out.println(d1==d2);//输出true
System.out.println(f==d);//输出flase 判断f,d"数据类型“是否相等,不相等输出flase,反之true
System.out.println(f);
System.out.println(d);
//字符扩展
char c1='A';
char c2='a';
System.out.println(c1);
System.out.println((int)c1);//强制转换
System.out.println(c2);
System.out.println((int)c2);//强制转换
//所有字符本质是数字,ASCLL码
//编码 Unicode表 :(97=a 65=A) 2字节 0~65536 ;Excel表格 65536
char c3 ='\u0061';//代表转译
System.out.println(c3);//输出a
//转义字符
// 制表符\t=tab,换行\n,与c语言中类似
System.out.println("hello\tworld");
System.out.println("hello\nworld");
System.out.println("--------");
String sa = new String("hello world");
String sb = new String("hello world");
System.out.println(sa==sb);//输出false
String sc="hello world";
String sd="hello world";
System.out.println(sc==sd);//输出true
//对象 从内存分析
//布尔值扩展
boolean flag=true;
if(flag==true);//括号内或者写成(flag)