1、标识符:JAVA里面我们可以为之命名的就是标识符,如变量、方法、类等。

      但是标识符只能包含字母、数字、下划线(_)和美元符号($),并且只能以字母、下划线和美元符号开头不能以数字开头。
2、变量:在JAVA中存储数据的最小单元。实质上就是一小块内存。
     计算机中存储数据的最小单元是位(bit)。
      8bit = 1byte(字节)
      1024byte = 1KB
     一个英文字符占一个字节;
       一个中文字符占两个字节;
      内存和硬盘的区别:
        内存临时保存数据,硬盘长期的保存数据。
      程序运行的本质:就是开辟了一小块内存;程序是运行在内存中的。
      由于在计算机中寻找一个变量只能通过内存地址或者是硬盘上的地址来寻找,但是内存地址、硬盘上的地址不便于记忆,于是就为地址命名,这就是变量名。
      变量必须先声明再赋值。使用时,可以声明变量的同时进行初始化也可以先声明后赋值。

3、常量:不能变化量,即内存中保存的内容不能发生变化。

     语法:final 数据类型  常量名 = 值;  //常量名一般使用大写字符
4、变量的分类

  1)、从位置上分:
      成员变量(在类中方法外定义的变量)
      局部变量(在方法中定义的变量)
  2)、从数据类型上分:
      基本数据类型:4类8种
      引用数据类型:除了基本数据类型之外的。
5、数据类型:用来规定变量只能存放什么样的数据。
  1)、布尔类型——boolean(表示真与假,逻辑运算符)(1字节)值只有true和false
  2)、字符类型——char(表示一个字符)在JAVA中字符类型占两个字节,而C语言中只占1个字节。本质上char就是整数。
  3)、整数类型——byte(1字节)\short(2字节)\int(4字节)—默认\long(8字节)
  4)、浮点数类型——float(4字节)\double(8字节)
    一个字节可以表示256个整数,两个字节65536个。?
    一个字节可以表示的最大正整数为127,最小负整数为-128。?
6、数据类型的转换
  1)、小的自动转换成大的
    byte/short/char—int—long—float—double
  2)、boolean类型不能与其他类型之间转换。
  3)、大的转换小的必须加强制转换。但需注意内存溢出问题。
  4)、byte/short/char之间不能进行转换,如果参加了运算,先转换成int类型,再进行运算。
7、多种数据类型混合运算的时候,先把所有的数据转换成参加运算中最大的类型,再进行运算。
8、&&(||)比&(|)效率更高。当判断出第一个表达式为假(真)的时候,&&(||)可以直接判断结果,后一表达式就不再执行了。
9、三目表达式——X?Y:Z
当X为真时,结果为Y;反之,为Z。
10、自增自减运算符
当运算符放在变量的前面的时候,先自加(自减)在运算;若放在变量的后面,先运算再自加(自减)。

11、注释:?

  三种类型:

  文档注释:/**开头      多行注释:/*开头      单行注释://

        结尾*/          结尾*/ 

  通过 javadoc 命令从文档注释中提取内容,生成程序的 API 帮助文档。
  javadoc -d doc 类名.java

  PS:使用文档注释时还可以使用 javadoc 标记,生成更详细的文档信息:
  @author 标明开发该类模块的作者
  @version 标明该类模块的版本
  @see 参考转向,也就是相关主题
  @param 对方法中某参数的说明
  @return 对方法返回值的说明
  @exception 对方法可能抛出的异常进行说明

  • 基础数据类型之四类八种

除了 这四类八种基础类型,剩下的java 一切类型都是引用类型。
第一类:整型 byte short int long
第二类:浮点型 float double
第三类:逻辑型 boolean(它只有两个值可取true false)
第四类:字符型 char

Byte  1字节,short 2字节,int 4字节,long 8字节

一个字节占8位(1byte=8bits),那么这些类型能表示的最大数是多少呢?各位听众,看仔细咯:

 ? 以short类型为例,2个字节,16位,用二进制表示最大数就是 1111 1111 1111 1111,理论上来说最大数应该是2^16 - 1,但实际上由于整型是可以为负数的,那么他就是有符号位的,那没办法高位的1就是表示符号位了(最高位为1表示负数,0表示正数),所以正整数的最大数为 0111 1111 1111 1111,即为32627(2^15 - 1);负数的最大数1111 1111 1111 1111,反码(正数没有反码,负数的反码符号位保留,其他位取反)为:1000 0000 0000 0000,补码(补码为反码+1)为:1000 0000 0000 0001,即为-32628(-2^15)。

类型   取值范围
byte    -2^7 ~ 2^7 - 1
short     -2^15 ~ 2^15 - 1
int    -2^31 ~ 2^31 - 1
long    -2^63 ~ 2^63 -1

java中默认的整数类型是int类型,如果要定义为float型,则要在数值后加上l或L;

默认的浮点型也是双精度浮点,如果要定义为float型,则要在数值后加上f或F。

把一个能表示更大范围或者更高精度的类型,转换为一个范围更小或者精度更低的类型时,就需要使用强制类型转换。

注意:未带有字符后缀标识的整数默认为int类型;未带有字符后缀标识的浮点数默认为double类型。

!!!!!!String 是引用类型 不属于四类八种基础数据类型中的一个,切记切记 往往面试的时候 面试官会问道这个问题而且频率很高。

在计算过程中三个比较特殊的情况:正无穷大,负无穷大,NaN,这三个值都有常量与之对应

另外,对NaN值的判断不能使用“==”来判断,Java中提供了专门的方法进行判断,Double.isNaN();

java基础知识(一)之数据类型和运算符的更多相关文章

  1. java基础知识—变量、数据类型和运算符

    1.变量:存储数据的一个基本单元.2.变量的声明和赋值: 1)声明并赋值;数据类型 变量名=值 例如:int prince=10; 2) 声明.赋值分为两步: 数据类型 变量名: 例如:int=pri ...

  2. Java 第二章 变量、数据类型和运算符

    第二章      变量.数据类型和运算符 什么是变量: 变量代表一块内存区域,变量类型不一样,这一块内存的大小也不一样. #在编程语言里面,你可以通过定义变量,向内存里添加数据或者修改内存已有的数据. ...

  3. Java中的变量,数据类型和运算符

    变量,数据类型和运算符 1.变量是一个数据存储空间的表示,它是储存数据的基本单元. 如何理解这句话,下面用一个表格可以形象的表达: 变量与房间之间的对应关系 房间名称 变量名 房间类型 变量类型 入住 ...

  4. java基础讲解04-----数据类型和运算符

    1.java的基本数据类型 1.数值型  { 整数型   byte  , short  ,int  ,long 浮点型   float , double } 2.字符型 3.布尔型 2.运算符 1.赋 ...

  5. Java中的变量、数据类型和运算符

    1. java语言是一种强类型的语言,对各种数据类型都有明确的区分,而计算机使用内存来记忆大量运算时需要使用的数据,而当声明一个变量时,即在内存中划分一块空间存储数据,而变量类型决定划分内存空间的大小 ...

  6. Go语言基础三:基本数据类型和运算符

    Go语言数据类型 与其他编程语言一样,Go语言提供了各种数据类型,可分为基本的数据类型和复杂的数据类型.基本的数据类型就是基本的构造块,例如字符串.数字和布尔值.复杂的数据类型是用户自己定义的结构,由 ...

  7. 初识Java Java基础知识

    今天给大家带来的是初级Java基础部分的知识:包括初识Java.变量.常量.数据类型.运算符.各种选择结构.循环结构.数组等Java的基础语法部分!!!内容.步骤超详细,附有各种案例的源代码(可以直接 ...

  8. Java基础知识总结(超级经典)

    Java基础知识总结(超级经典) 写代码: 1,明确需求.我要做什么? 2,分析思路.我要怎么做?1,2,3. 3,确定步骤.每一个思路部分用到哪些语句,方法,和对象. 4,代码实现.用具体的java ...

  9. 毕向东—Java基础知识总结(超级经典)

    Java基础知识总结(超级经典) 写代码: 1,明确需求.我要做什么? 2,分析思路.我要怎么做?1,2,3. 3,确定步骤.每一个思路部分用到哪些语句,方法,和对象. 4,代码实现.用具体的java ...

  10. 黑马毕向东Java基础知识总结

    Java基础知识总结(超级经典) 转自:百度文库 黑马毕向东JAVA基础总结笔记    侵删! 写代码: 1,明确需求.我要做什么? 2,分析思路.我要怎么做?1,2,3. 3,确定步骤.每一个思路部 ...

随机推荐

  1. DRF 中 解决跨域 与 预检

    DRF 中 解决跨域 与 预检 1 跨域 浏览器的同源策略: 对ajax请求进行阻拦 ps: 对href src属性 不限制 只有浏览器会阻止,requests模块不会存在跨域 (1)解决方案1 JS ...

  2. 随想录(skyeye中的soc仿真)

    [ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 想学好soc,再怎么看芯片手册和linux kernel都不为过.但是要学习好kernel,那再 ...

  3. 解决问题:zipimport.ZipImportError: can't decompress data; zlib not available

    场景描述 需要从源代码编译安装python-3.6.1的版本 环境描述 python-2.7.5, Centos 7 步骤重复 解压缩python-xx.tgz 进入源代码目录 ./configure ...

  4. Kotlin For Gank.io (干货集中营Kotlin实现)

    介绍 Kotlin,现在如火如荼,所以花了一点时间把之前的项目用Kotlin重构一下 原项目地址:https://github.com/onlyloveyd/GankIOClient 对应Kotlin ...

  5. 编写实现字符串拷贝函数strcpy()完整版

    有个题目编程实现字符串拷贝函数strcpy(),很多人往往很快就写出下面这个代码. void strcpy( char *strDest,char *strSrc ) { while(( *strDe ...

  6. NOIP模拟题 管道

    题目大意 给定$n$个点的无向图,求它的$Dfs$序方案数$n\leq 18$ 题解 状压$Dp+$记忆化搜索. 设$F_{i,now}$表示到达$i$其中$now$集合代表的点集已经遍历过,还需要遍 ...

  7. vc++ windows 创建桌面快捷方式

    创建桌面快捷方式 在windows软件开发中,软件安装过程中总是需要在桌面创建快捷方式,下面介绍一种创建桌面快捷方式的方法,具体代码如下: /* * 创建快捷方式 * szExePath[in]:要创 ...

  8. 【HTML5】Canvas绘图详解-1

    ----->Canvas绘制基础 1,线条绘制 1-1,线条组成的图形和beginPath 案例:绘制由不同颜色的线条组成的图案 1-2,多边形的填充和closePath 案例:绘制封闭具有填充 ...

  9. 设置正确的DNS

    上网或下载软件慢问题,除去少数设备陈旧.感染病毒.网卡硬件故障和网卡驱动错误方面的因素,绝大部分原因是由于部分上网电脑或家用无线路由器设置了错误的DNS造成的,正确的方法是应该在电脑或路由器上使用本地 ...

  10. The type org.springframework.context.ConfigurableApplicationContext cannot be resolved问题解决

    在搭建maven项目的时候,有时候会报这样的问题. The type org.springframework.context.ConfigurableApplicationContext cannot ...