第02章:数据类型和运算符

一、概述:

1、数据类型:int、float、char、boolean

2、运算符:算术运算符、赋值运算符、关系运算符、逻辑运算符、位运算符(了解即可)、条件运算符

3、基本数据类型的类型转换:自动类型转换、强制类型转换。

二、重点内容:

1、标识符:必须以字母、下划线、美元符$开头,其他部分可以是字母、下划线、美元符、数字的任意组合,不建议使用中文。(注意:标识符不能为Java关键字)

2、ASCII英文字符集1个字节,Unicode国际通用字符集2个字节。

3、Java是一种强类型语言就:常量是有数据类型的,变量都必须声明其数据类型。

4、变量要素:变量名、变量类型和作用域。(注意:只有在变量声明以后,才能为其分配相应长度的存储单元)

5、进制数表示:十进制(如99)、八进制(要求以0开头,如015)、十六进制(要求0x或0X开头,如0x15)

6、数据类型的范围和所占字节数:

注意:一个字节八位,2的8次方等于256,其他的以此类推。

7、科学计数法:double f=314e2; //314*10^2--->31400.0 (或者是314E2,如果是314*10^-2,则表示为314e-2)

8、浮点数存在舍入误差,很多数字不能精确表示,如果需要进行不产生舍入误差的精确数字计算,需要使用BigDecimal类。

9、转义字符:退格\b 换行\n 回车\r 制表符\t 双引号\” 单引号\’

反斜杠\\

10、注意:尽量在if或者其他的判断语句中去掉所有的==fasle和==true,换种思考用不能与!=就可以了。

11、命名规范:首字母小写和驼峰原则(第二个单词首字母大写,如:monthSalary),常量(大写字母和下划线:MAX_VALUE),类名(首字母大写和驼峰规则,如:GoodMan)。

12、注意:%(取模、求余,如6%4=2),/除(如6/4=1),+:字符串相加,只要有一个操作数是字符串,自动变为字符串相连

13、整数运算:

① 如果两个操作数有一个为long,则结果也为long

② 没有long时,结果为int。即使操作数全为short、byte,结果也是int。

14、浮点运算:

① 如果两个操作数有一个为double,则结果为double

② 只有两个操作数都是float,则结果才为float。

15、运算符优先级:赋值<三目<逻辑<关系<算术<单目

16、整数运算中相邻两个操作数先转化为同一类型,转换从低级到高级,然后进行运算,以此类推。

17、自动类型转换(类型转换方向):byte-->short,char-->int-->long-->float-->double(从左到右)

18、强制类型转换:强转时,当心丢失数据或失真。

Java 总结篇2的更多相关文章

  1. Java提高篇——对象克隆(复制)

    假如说你想复制一个简单变量.很简单: int apples = 5; int pears = apples; 不仅仅是int类型,其它七种原始数据类型(boolean,char,byte,short, ...

  2. Java提高篇(三三)-----Map总结

    在前面LZ详细介绍了HashMap.HashTable.TreeMap的实现方法,从数据结构.实现原理.源码分析三个方面进行阐述,对这个三个类应该有了比较清晰的了解,下面LZ就Map做一个简单的总结. ...

  3. Java提高篇(三二)-----List总结

    前面LZ已经充分介绍了有关于List接口的大部分知识,如ArrayList.LinkedList.Vector.Stack,通过这几个知识点可以对List接口有了比较深的了解了.只有通过归纳总结的知识 ...

  4. Java提高篇(三一)-----Stack

    在Java中Stack类表示后进先出(LIFO)的对象堆栈.栈是一种非常常见的数据结构,它采用典型的先进后出的操作方式完成的.每一个栈都包含一个栈顶,每次出栈是将栈顶的数据取出,如下: Stack通过 ...

  5. java提高篇(三十)-----Iterator

    迭代对于我们搞Java的来说绝对不陌生.我们常常使用JDK提供的迭代接口进行Java集合的迭代. Iterator iterator = list.iterator(); while(iterator ...

  6. java提高篇(二九)-----Vector

    在java提高篇(二一)-–ArrayList.java提高篇(二二)-LinkedList,详细讲解了ArrayList.linkedList的原理和实现过程,对于List接口这里还介绍一个它的实现 ...

  7. Java提高篇(二八)------TreeSet

    与HashSet是基于HashMap实现一样,TreeSet同样是基于TreeMap实现的.在<Java提高篇(二七)-----TreeMap>中LZ详细讲解了TreeMap实现机制,如果 ...

  8. Java提高篇(二七)-----TreeMap

    TreeMap的实现是红黑树算法的实现,所以要了解TreeMap就必须对红黑树有一定的了解,其实这篇博文的名字叫做:根据红黑树的算法来分析TreeMap的实现,但是为了与Java提高篇系列博文保持一致 ...

  9. Java提高篇(二六)-----hashCode

          在前面三篇博文中LZ讲解了(HashMap.HashSet.HashTable),在其中LZ不断地讲解他们的put和get方法,在这两个方法中计算key的hashCode应该是最重要也是最 ...

  10. java提高篇(二四)-----HashSet

          在前篇博文中(java提高篇(二三)-----HashMap)详细讲解了HashMap的实现过程,对于HashSet而言,它是基于HashMap来实现的,底层采用HashMap来保存元素. ...

随机推荐

  1. 定量变量和定性变量的转换(Transform of Quantitative & Qualitative Variables)

    定量变量(Quantitative Variables):也称为数值型变量(Numerical Variables),可以用连续值或离散值表示.比如:气温(连续值),学生人数(离散值). 为什么要对定 ...

  2. OpenFOAM——气泡上升

    计算域的顶部为大气,其余部分为壁面 流体的物性参数为: 首先进行建模操作,任何建模软件均可,本算例采用ICEM直接建模,生成网格,然后利用OpenFOAM下转化网格,划分完成的网格如下: 网格比较密集 ...

  3. 新版本Mariadb安装后相关问题的解决

    给新机器Ubuntu安装的Mariadb后无法登录,通过网上各种方法修改root用户密码,仍然无法解决,耗费几个小时! 经过看日志和查手册,发现原因如下: ubuntu确实安装没有启用root用户,所 ...

  4. golang调用 exec命令 出现too many open files

    systemd 启动的服务, 跟系统的ulimit 没有关系. 大概的意思就是通过systemd启动的服务,不会使用ulimit中的配置,需要在systemd中或者service配置文件中定义,可以通 ...

  5. 啃OBS源码-界面汉字

    插件对应该字体目录:D:\project\vs\obs\obsstudio21.12\build\rundir\Debug\data\obs-plugins obs对应该字体目录:D:\project ...

  6. 升级ruby的版本 https://gems.ruby-china.com/

    升级ruby版本,有时候安装ruby的版本过低,需要进行升级,例如安装在centos6.7安装fpm需要ruby版本在1.9以上. 1.主机环境如下: 1 [root@test ~]# cat /et ...

  7. C语言函数sscanf()的用法-从字符串中读取与指定格式相符的数据(转)

    C语言函数sscanf()的用法 sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型: int sscanf( string str, string fmt, mixed var ...

  8. md5签名加密(用于java 后台调用短信平台接口实现发短信)

    MD5Util 方法 package com.funcanteen.business.action.pay.util; import java.security.MessageDigest; publ ...

  9. XNOR-Net:二值化卷积神经网络

    https://www.jianshu.com/p/f9b015cc4514 https://github.com/hpi-xnor/BMXNet  BMXNet:基于MXNet的开源二值神经网络实现 ...

  10. android -------- GifImageView 之gif图片加载

    目前支持Gif播放的开源库还是有的,试了一下还是这种好用点,所以来分享下android-gif-drawable是通过JNI来渲染帧的,这种方式比使用WebView或者Movie效率要高 要求Andr ...