java数据 和 变量

Java数据类型

强类型语言:要求变量严格符合规定,所有变量必须先定义才能使用。

java的数据类型分为两大类

 

 

在Java中 基本类型

  //字符
       char name ='a';
 //字符串,String不是关键字,是类
       String namea ="邵翔";

 //float类型要在数字后面加个F
 //Long类型要在数字后面加个L

引用数据类型:类

                            接口

                             数组

什么是字节

位(bit)储存的最小单位,11001100一个八位的二进制

字节(byte)处理数据的基本单位,习惯用B表示

1B==8 bit(位)         1024B=1KB     1024KB=1M     1024M=1G

 

数据类型的扩展(内涵布尔值)

public class Demeo03 {
   public static void main(String[] args) {
       //整数扩展:   进制     二进制0b     十进制     八进制0     十六进制0x

       int i = 10;                                  
       int i2 = 010;  //八进制0                      
       int i3 = 0x10; //十六进制0x   0~9 A~F 16    

       System.out.println(i);
       System.out.println(i2);
       System.out.println(i3);
       System.out.println("==============================");
       //=======================================================
       //浮点数扩展   银行业务怎么表示?钱
       //BigDecimal 数学工具类 来表示
       //=======================================================

       //float double 有限 离散 浮点数都存在舍入误差   大约 接近但不等于
       //double
       //最好不要用浮点数进行比较
       //最好不要用浮点数进行比较
       //最好不要用浮点数进行比较

       float f = 0.1f;    //0.1
       double d = 1.0/10; //0.1

       System.out.println(f==d);//false

       float d1 = 232323232323f;
       float d2 = d1+1;
       System.out.println(d1==d2);//ture


       //=======================================================
       //字符扩展?
       //=======================================================
       char c1 ='c';
       char c2 ='中';

       System.out.println(c1);

       System.out.println((int)c1);//强制转换 99

       System.out.println(c2);

       System.out.println((int)c2);//强制转换 20013

       //所有的字符本质都是数字
       //编码 Unicode   占2字节 0-65536     Excel只有2的16次方=65536长度

       //U0000 UFFFF
       char c3 = '\u0061';
       System.out.println(c3);//a

       //转义字符
       // \t   制表符
       // \n   换行
       System.out.println("Hello\nworld");

       System.out.println("==============================");
       
       //布尔值扩展
       boolean flag =true;
       if (flag==true){};
       if (flag){};
       //Less is More!代码要精简易读

  }
}

 

类型转换

低----------------->高

byte ,short ,char ,int ,long ,flaot ,double

强制类型转换  高-->低

自动类型转换  低-->高

转换的注意问题

 

/*
注意点:
1. 不能对布尔值进行转换
2. 不能把对象的类型转换为不相干的类型
3. 把高容量转低容量的时候,强制转换
4. 转换的时候可能遇到内存溢出,或者精度问题!
*/
public class Dome05 {
   public static void main(String[] args) {
       //操作比较大的数时,注意溢出问题
       //JKD7新特性,数字之间可以用下划线
       int money = 10_0000_0000;
       System.out.println(money);
       int year = 20;
       int total = year * money;           //-1474836480 ,计算的时候已经溢出了
       long total2 = year * money;         //默认值是int,转换之前已经存在问题了?
       long total3 = year * ((long) money);//先把一个数转化位Long

       System.out.println(total);   //-1474836480
       System.out.println(total2);  //-1474836480

       System.out.println(total3);  //20000000000
  }

}

 

变量、常量变量、变量的作用域

变量的作用域

  • 类变量

  • 实例变量

  • 局部变量

public class Dome06 {

   //类变量 static
  static double salary =2500;

   //属性:变量

   //实例变量:从属于对象;如果不初始化,默认值数字类为 0 0.0 u000
   //布尔值默认为false
   //除了基本类型其余的默认值都是null;
   String name;
   int age;
   
=================================================================================
   //mian 方法
   public static void main(String[] args) {

       //局部变量;必须声明初始化值
       int i = 10;
       System.out.println(i);

   
       //实例变量 变量类型 变量名字= new Dome06
       Dome06 dome06 = new Dome06();      //new Demo06.var+回车
       System.out.println(dome06.age);    // 0
       System.out.println(dome06.name);   // null

   
       //类变量
       System.out.println(salary);

  }
=================================================================================
   //其他方法
   public void add(){
      xxxxxxxxxx
  }
}

常用变量

final 常量名=值

final double PI =3.14;

常量名一般用大写字符。

public class Demo07 {
   //常量     final 常量名=值;

   //修饰符不存在先后顺序 static     static final和final static值一样
   static final  double PI = 3.14;

   public static void main(String[] args) {

       System.out.println(PI);
  }
}

 

变量的命名规范!!!!!

 

 

 

posted @ 2020-07-31 00:05  邵翔  阅读(286)  评论(0)    收藏  举报