数据类型




一,整数类型


在Java中有三种:


八进制:必须以0开头


十进制:不能以0开头,0除外


十六进制:必须以0X或者0x开头


使用long时,需要在数字后面加上L或者l


long num = 214748650L;



二,浮点类型


在默认情况下,小数都被看做double类型,若使用float型小数,则需要在小数后面添加F或者f,已使用后缀D或者d来表明这是一个double类型数据,不加d不会出错,但声明float型变量时如果不加f,系统会认为变量是double类型而出错,下面举例,


float f1 = 13.23f;
 
double d1=4562.12d;
 
double = 14589.1563D;



三,字符类型


字符类型(char)用来存储单个字符,占用16位(两个字节)的内存空间,在定义字符变量时要用单引号表示,


例如 char = 'a';由于a在Unicode表中排序位置是97,因此也允许写成


char x=97;



四,布尔类型


布尔类型又称为逻辑类型,通过关键字boolear来定义布尔类型变量,只有true和false两个值,分别代表真和假,布尔值不能与整数类型进行转换



五,标识符和关键字


标识符可以简单的理解为一个名字,用来标识类名,变量名,方法名,数组名,文件名的有效字符序列


Java中规定标识符由任意顺序的字母,下划线_ 美元符号$和数组组成,并且第一个字符不能为数字,表示符不能是Java的关键字


关键字

含义

abstract

表明类或者成员方法具有抽象属性

assert

用来进行程序调试

boolean

基本数据类型之一,布尔类型

break

提前跳出一个块

byte

基本数据类型之一,字节类型

case

用在switch语句之中,表示其中的一个分支

catch

用在异常处理中,用来捕捉异常

char

基本数据类型之一,字符类型

class

const

保留关键字,没有具体含义

continue

回到一个块的开始处

default

默认,例如,用在switch语句中,表明一个默认的分支

do

用在do-while循环结构中

double

基本数据类型之一,双精度浮点数类型

else

用在条件语句中,表明当条件不成立时的分支

enum

枚举

extends

表明一个类型是另一个类型的子类型,这里常见的类型有类和接口

final

用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变,用来定义常量

finally

用于处理异常情况,用来声明一个基本肯定会被执行到的语句块

float

基本数据类型之一,单精度浮点数类型

for

一种循环结构的引导词

goto

保留关键字,没有具体含义

if

条件语句的引导词

implements

表明一个类实现了给定的接口

import

表明要访问指定的类或包

instanceof

用来测试一个对象是否是指定类型的实例对象

int

基本数据类型之一,整数类型

interface

接口

long

基本数据类型之一,长整数类型

native

用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的

new

用来创建新实例对象

package

private

一种访问控制方式:私用模式

protected

一种访问控制方式:保护模式

public

一种访问控制方式:共用模式

return

从成员方法中返回数据

short

基本数据类型之一,短整数类型

static

表明具有静态属性

strictfp

用来声明FP_strict(单精度或双精度浮点数)表达式遵循 IEEE 754 算术规范 [1]  

super

表明当前对象的父类型的引用或者父类型的构造方法

switch

分支语句结构的引导词

synchronized

表明一段代码需要同步执行

this

指向当前实例对象的引用

throw

抛出一个异常

throws

声明在当前定义的成员方法中所有需要抛出的异常

transient

声明不用序列化的成员域

try

尝试一个可能抛出异常的程序块

void

声明当前成员方法没有返回值

volatile

表明两个或者多个变量必须同步地发生变化

while

用在循环结构中


六变量常量


变量的命名规范:


变量名必须是一个有效的标识符


变量名不可以使用Java中的关键字


变量名不能重复\


见民知道意思


int age;//声明int 型变量


char char1= 'r';//声明char型变量并赋值(初始化)



常量(constant)也被称为final变量,,常量在整个程序中只能被赋值一次,但为所有的对象共享,常量非常有用,常量除了指定数据类型外,还需要通过final关键字来限定,声明语法如下


语法: final 数据类型 常量名称[=值]


ps final double PI=3.1415926D;


七 变量的有效范围


变量分为成员变量和局部变量


java double 整数相加后有小数 java中double后面要加d吗_运算符



七.运算符


赋值运算符 =


算数运算符 +(加) -(减) *(乘) /(除) %(求余)


自增自减运算符


java double 整数相加后有小数 java中double后面要加d吗_运算符_02



八,逻辑运算符


逻辑 与 &(&&)


逻辑或 ||


逻辑非 !


表达式 1

表达式 2

表达式 1 && 表达式 2

表达式 1 || 表达式 2

! 表达式 1

true

True

True

True

False

True

False

False

True

False

False

False

False

False

True

False

True

False

True

True


使用"&"会判断两个表达式;而使用"&&"则是针对boolean类型的进行判断,当第一个表达式为FALSE时不会去判断第二个表达式,,直接输出结果节省计算机判读次数


九.位运算符


1 "按位与"运算,运算符"&",为双目运算符,法则: 如果两个整型数据a,b对应位都是1,则结果位才是1,否则为0;


2 " 按位或"运算,运算符"|",为双目运算符, 法则:如果两个操作数对应位都是0,则结果位才是0,否则为1;


按位与 00000000 00000000 00000000 00000101


111111111 111111111 111111111 111111100


输出


00000000 00000000 00000000 00000100



按位或 00000000 00000000 00000000 00000011


00000000 00000000 00000000 00000110


输出


00000000 00000000 00000000 00000111


3 "按位取反"运算,运算符"~",为单目运算, 法则:将二进制中的1修改为0


4 "按位异或"运算,运算符"^",为双目运算, 法则:当两个数的二进制表示相同时,结果为0,否则为1,若两个操作数的精度不同,则结果数的精度与精度高的操作数相同


5 移位操作 <<左移 >>右移 >>>无符号右移


十 :三元运算符


语法: 条件式?值1:值2


当条件式满足时,执行值1,否则执行值2


十一:运算符优先级


通常优先级由高到低的顺序依次是:


增量和减量运算 > 算术运算 > 比较运算 > 逻辑运算> 赋值运算


十二 ;数据类型转换


隐式转换


从低级类型向高级类型转换,系统将自动执行,这种类型转换称为隐式转换;这种转换按精度从低到高顺序为:byte <short<int<long< float<double,转换之后的结果数据类型将显示高级类型;


显式转换


当把精度高的变量的值赋值给低精度的变量时,必须使用显式转换又称强制转换


语法:(类型名)要转换的值


ps int a = (int)45.23 //输出结果45
 
long y = (long)456.6F; //输出结果456
 
int b = (int) 'b';//输出结果为100