腾讯5分彩平台网址_Java基本数据类型总结、类型转换、常量的声明规范,final关键字的用法

  • 时间:
  • 浏览:1

变量什么都 申请内存来存储值。也什么都 说,当创建变量的就说 我,还可不里能在内存中申请空间。

内存管理系统根据变量的类型为变量分配存储空间,分配的空间还可不里能了用来储存该类型数据。

就说 我,通过定义不类式型的变量,还可不里能 在内存中储存整数、小数不可能 字符。

Java 的两大数据类型:

  • 内置数据类型
  • 引用数据类型

1.1  内置数据类型

Java语言提供了八种基本类型。六种数字类型(3个整数型,有另有另兩个浮点型),一种 字符类型,还有一种 布尔型。

1.1.1  byte:

  • byte 数据类型是8位、有符号的,以二进制补码表示的整数;
  • 最小值是 -128(-2^7);
  • 最大值是 127(2^7-1);
  • 默认值是 0;
  • byte 类型用在大型数组中节约空间,主要代替整数,不可能 byte 变量占用的空间还可不里能了 int 类型的四分之一;
  • 例子:byte a = 60 ,byte b = -60 。

1.1.2  short:

  • short 数据类型是 16 位、有符号的以二进制补码表示的整数
  • 最小值是 -32768(-2^15);
  • 最大值是 32767(2^15 - 1);
  • Short 数据类型也还可不里能 像 byte 那样节省空间。有另有另兩个short变量是int型变量所占空间的二分之一;
  • 默认值是 0;
  • 例子:short s = 60 0,short r = -60 00。

1.1.3  int:

  • int 数据类型是32位、有符号的以二进制补码表示的整数;
  • 最小值是 -2,147,483,648(-2^31);
  • 最大值是 2,147,483,647(2^31 - 1);
  • 一般地整型变量默认为 int 类型;
  • 默认值是 0 ;
  • 例子:int a = 60 000, int b = -60 000。

1.1.4  long:

  • long 数据类型是 64 位、有符号的以二进制补码表示的整数;
  • 最小值是 -9,223,372,036,854,775,60 8(-2^63);
  • 最大值是 9,223,372,036,854,775,60 7(2^63 -1);
  • 什儿 类型主要使用在还可不里能比较大整数的系统上;
  • 默认值是 0L;
  • 例子: long a = 60 000L,Long b = -60 000L。

    "L"理论上不分大小写,就说 我若写成"l"容易与数字"1"混淆,不容易分辩。什么都最好大写。

1.1.5  float:

  • float 数据类型是单精度、32位、符合IEEE 754标准的浮点数;
  • float 在储存大型浮点数组的就说 我可节省内存空间;
  • 默认值是 0.0f;
  • 浮点数还可不里能了用来表示精确的值,如货币;
  • 例子:float f1 = 234.5f。

1.1.6  double:

  • double 数据类型是双精度、64 位、符合IEEE 754标准的浮点数;
  • 浮点数的默认类型为double类型;
  • double类型同样还可不里能了表示精确的值,如货币;
  • 默认值是 0.0d;
  • 例子:double d1 = 123.4。

1.1.7  boolean:

  • boolean数据类型表示一位的信息;
  • 还可不里能了有另有另兩个取值:true 和 false;
  • 什儿 类型只作为一种 标志来记录 true/false 情形;
  • 默认值是 false;
  • 例子:boolean one = true。

1.1.8 char:

    • char类型是有另有另兩个单一的 16 位 Unicode 字符;
    • 最小值是 \u0000(即为0);
    • 最大值是 \uffff(即为65,535);
    • char 数据类型还可不里能 储存任何字符;
    • 例子:char letter = 'A';。

2   引用类型

  • 在Java中,引用类型的变量非常类式C/C++的指针。引用类型指向有另有另兩个对象,指向对象的变量是引用变量。那先 变量在声明时被指定为有另有另兩个特定的类型,比如 Employee、Puppy 等。变量一旦声明后,类型就还可不里能了被改变了。
  • 对象、数组也有引用数据类型。
  • 所有引用类型的默认值也有null。
  • 有另有另兩个引用变量还可不里能 用来引用任何与之兼容的类型。
  • 例子:Site site = new Site("Runoob")。

3    常量的概述

常量是地处应用应用tcp连接过程中其值还可不里能了改变的量。

3.1   常量类型

Java中常量的分类:

    整数常量 : 所有整数

    小数常量 : 所有小数

    布尔常量 : 还可不里能了true和false

    字符常量 :使用’’引起来的单个字符

    字符串常量 :使用“”引起来的字符序列,“”  、“a” 、” ” 

    null常量 : 还可不里能了有另有另兩个值null

3.2  char 类型

char类型表示的是单个字符类型,任何数据使用单引号括起来的也有表示字符。字符还可不里能了有有另有另兩个字符,比如:普通的老百姓穿上军装什么都 军人。       

    注意:特殊字符的转义序列:转义字符

   转义字符的概述:

特殊字符使用”\”把其转化成字符的一种 输出,这样 使用”\”的字符称作为转移字符。

需求:使用输出一句话,打印出带引号的信息类式输出。

System.out.println("teacher said"java is fun"");编译是无法正常通过的。语法有错误,编译器读到第3个引号就认为是字符串的就说 我刚结速,剩余的问你为啥外理。如保外理什儿 什么的问题:java中使用转义字符来表示特殊的字符。有另有另兩个转义字符以反斜杠(\)就说 我刚结速。

     什么的问题:我想要打印带引号的字符串为啥办,就还可不里能 使用反斜杠(\)后跟字符,什儿 反斜杠什么都 转义字符。

 

\r 表示接受键盘输入,离米 按下回车。

\n 表示换行。

\t  制表符,离米 Table键

\b 退格键,离米 Back Space

\’  单引号

\’’ 双引号

\\ 表示有另有另兩个斜跨

上述问什么的问题外理:System.out.println("teacher said\"java is fun\"");

注意:换行符什么都 另起一行,回车符什么都 回到一行的开头,什么都大伙平时编写文件的回车符应该确切来说叫做回车换行符

Java中这8中基本数据类型也有小写的。

 3.4  常量名的声明规范:

多个单词组成时,字母完整版大写,多个单词之间使用_分隔(例:INTEGER_CACHE)

注意:什么都 为了增加规范性、可读性而做的一种 约定,标识符在定义的就说 我最               好见名知意,提高代码阅读性。

4   自动类型转换

整型、实型(常量)、字符型数据还可不里能 混合运算。运算中,不类式型的数据先转化为同一类型,就说 我进行运算。

转换从低级到高级。

  ------------------------------------>  

byte,short,char—> int —> long—> float —> double

数据类型转换还可不里能满足如下规则:

  • 1. 还可不里能了对boolean类型进行类型转换。

  • 2. 还可不里能了把对象类型转添加不相关类的对象。

  • 3. 在把容量大的类型转换为容量小的类型时还可不里能使用强制类型转换。

  • 4. 转换过程中不可能 意味分析溢出或损失精度

  • 5. 浮点数到整数的转换是通过舍弃小数得到,而也有四舍五入

自动类型转换

还可不里能满足转换前的数据类型的位数要低于转换后的数据类型,类式: short数据类型的位数为16位,就还可不里能 自动转换位数为32的int类型,同样float数据类型的位数为32,还可不里能 自动转换为64位的double类型。

强制类型转换

  • 1. 条件是转换的数据类型还可不里能是兼容的。

  • 2. 格式:(type)value type是要强制类型转换后的数据类型 

隐含强制类型转换

  • 1. 整数的默认类型是 int。

  • 2. 浮点型不地处什儿 情形,不可能 在定义 float 类型时还可不里能在数字后边跟上 F 不可能 f。


5    final关键字

   1:定义静态法律法子求圆的面积

   2:定义静态法律法子求圆的周长

   3:发现法律法子所含重复的代码,什么都 PI,圆周率。

      1:不可能 还可不里能提高计算精度,就还可不里能修改每个法律法子中圆周率。

   4:描述有另有另兩个变量

      1:法律法子也有静态的,静态还可不里能了访问静态,什么都变量也定义为静态的。

public static double PI=3.14;

          1:不可能 定义为public后,新的什么的问题,类名.PI=60 ; 改变了PI的值。

2:修改为private,修改为private后进行了封装,还可不里能getset公共访问法律法子。

          3:现有的知识还可不里能了外理另有另有另兩个的什么的问题了。还可不里能

使用final

5.1 使用final

        1:final关键字主要用于修饰类、类成员、法律法子、以及法律法子的形参。

       2:final修饰成员属性:

          1:说明该成员属性是常量,还可不里能了被修改。

             public static final double PI=3.14;

                 1:public :访问权限最大

                 2:static :内存中还可不里能了一份

                 3:final  :是有另有另兩个常量

                 4:常量名大写

                 5:还可不里能初赋值。

          2:使用类名.成员。修改该成员的值,报错。--常量还可不里能了被修改

                1:基本数据类型,final使值不变

                2:对象引用,final使其引用恒定不变,无法让其指向有另有另兩个新的对象,就说 我对象自身却还可不里能 被修改。

                3:该关键字一般和static关键字结合使用

                     1:常量还可不里能 优先加载,无需等到创建对象的就说 我再初始化。

               4:final和static还可不里能 互换位置

               5:常量一般被修饰为final

          3:fianl修饰类:

               1:该类是最终类,还可不里能了被继承。

                    1:将父类加final修饰,子类继承,就会报错。

               2:查看api文档发现String类是final的。Integer类也是final的

                    1:为了外理代码功能被重写

                    2:该类这样 必要进行扩展

          4:final修饰法律法子:

                   1:该法律法子是最终法律法子,还可不里能了被重写

                   2:当有另有另兩个类被继承,这样 所有的非私有函数都将被继承,不可能 函数我想要被子类继承并重写还可不里能 将该函数final修饰

                   3:当有另有另兩个类中的函数都被修饰为final时,还可不里能 将类定义为final的。

          5:final关键字修饰形参

                   1:当形参被修饰为final,这样 该形参所属的法律法子中还可不里能了被篡改。

                   2: 项目中主要用于或多或少只用来遍历未知数据的函数。将未知变量声明为final的。增强数据的安全性。