这两天学习了基本的数据类型还有运算符.

分享一下学习过程还有写作~

数据类型分为基本数据类型还有引用数据类型,基本数据类型有4类8种:

整型: byte,short,int,long

浮点型:float和double

字符型:char

布尔型型:boolean(只有true和false两个值,用作判断的条件)

引用数据类型有数组,类和接口.

变量:在程序运行过程中可以重新赋值,声明变量会向计算机申请内存空间(其申请空间大小与数据类型相对应)

public static void main(String[] args){

/*    整型:byte,short,int,long

byte:1个字节(-2^7~2^7-1)===>-128~127

short:2个字节(-2^15~2^15-1)===>-32768~32767

int:4个字节(-2^31~2^31-1)===>大约在21亿

long:8个字节(-2^63~2^63-1)

注意问题:

5555555555默认int类型,必须添加L代表声明的变量为long类型

3.14默认为double类型,3.14f为float

浮点类型:float,double

float:4个字节,单精度浮点类型,精确到小数点后7位

double:8个字节,双精度浮点类型

*/

byte b=20;//范围-128~127

System.out.println("byte--->b="+b);

byte b2=012;//八进制,八进制以0开头

System.out.println("byte--->八进制b2="+b2);//将八进制12--->十进制10

byte b3=0x12 ;//十六进制,十六进制以0X开头

System.out.println("byte--->十六进制b2="+b3);//将十六进制12--->十进制18

short s=300;//范围-32768~32767

System.out.println("short--->s="+s);

int  i=10000;//范围大约21亿

System.out.println("int--->i="+i);

long l=5555555555L ;//5555555555默认int类型,5555555555L为long类型

System.out.println("long---->l="+l);

float f=3.14f;     //3.14默认为double类型,3.14f为float

System.out.println("float--->f="+f);

//科学计数法:314E2=314*10^2

float f2=314e2F ;//314e2默认为double类型

System.out.println("科学计数法的314E12==>"+f2);

double d=314e2;

System.out.println("double科学计数法的314E12==>"+d);

double d2=1.123456789012345678;//精度四舍五入

System.out.println("double--->d2="+d2);

常量:在程序运行过程不能更改其值的变量,在java中声明常量使用final,一旦变量使用final修饰,该变量为常量,无法为其重新赋值。变量命名经常大写(便于与变量进行区分)。

public static void main(String[] args){

/*

常量:在程序运行过程中不能被修改,

在java中使用final修饰,常量的命名一般为大写单词或字符

3.1415926

*/

final double PI=3.1415926;

//PI=3.14; 常量无法重新赋值

double r=5;

double s=5*5*PI;

double c=2*5*PI;

System.out.println("圆的面积为:"+s);

System.out.println("圆的周长为:"+c);

}

类型转换:

自动转化: 自动类型转换:容量小的数据类型可以自动转换为容量大的数据类型。

byte--short--int--float--double

可以将整型常量直接赋值给byte, short, char等类型变量,而不需要进行强制类型转换,只要不超出其表数范围

强制类型转换,又被称为造型,用于显式的转换一个数值的类型. 在有可能丢失信息的情况下进行的转换是通过造型来完成的,但可能造成精度降低或溢出.

当将一种类型强制转换成另一种类型,而又超出了目标类型的表示范围,就会被截断成为一个完全不同的值。

//这就是现在的进度

java初学第二章的更多相关文章

  1. “全栈2019”Java多线程第二章:创建多线程之继承Thread类

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  2. “全栈2019”Java异常第二章:如何处理异常?

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...

  3. JAVA基础第二章-java三大特性:封装、继承、多态

    业内经常说的一句话是不要重复造轮子,但是有时候,只有自己造一个轮子了,才会深刻明白什么样的轮子适合山路,什么样的轮子适合平地! 我将会持续更新java基础知识,欢迎关注. 往期章节: JAVA基础第一 ...

  4. JAVA 入门第二章 (面对对象)

    本渣渣鸽了一个月终于有时间更新.因为有c++基础,学起来这章还是比较简单的,本章我觉得是程序猿质变课程,理解面向对象的思想,掌握面向对象的基本原则以及 Java 面向对象编程基本实现原理,熟练使用封装 ...

  5. Upgrading to Java 8——第二章 Method References(方法引用)

    概述 很多java 方法会使用函数式接口作为参数.例如,java.util.Arrays类中的一个sort方法,就接受一个Comparator接口,它就是一个函数式接口,sort方法的签名如下: pu ...

  6. 深入理解java虚拟机-第二章:java内存区域与内存泄露异常

    2.1概述: java将内存的管理(主要是回收工作),交由jvm管理,确实很省事,但是一点jvm因内存出现问题,排查起来将会很困难,为了能够成为独当一面的大牛呢,自然要了解vm是怎么去使用内存的. 2 ...

  7. 深入理解java虚拟机-第二章

    第2章 Java内存区域与内存溢出异常 运行数据区域 1.程序计数器(Program Counter Register) 是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器. 2.J ...

  8. Java OOP——第二章 继承

    1. 继承: ●继承是面向对象的三大特征之一,是JAVA实现代码重用的重要手段之一: ●继承是代码重用的一种方式,将子类共有的属性和行为放到父类中: ●JAVA只支持单继承,即每一个类只有一个父类,继 ...

  9. JAVA OO 第二章知识点

    一.JAVA的基础语法 1.关键字 ①关键字:关键字用于定义该门语言,且这些单词对编译器用特殊的含义,而且不能作为标识符. 2.标识符 标识符:在JAVA中我们备选的单词,包括:类名.方法名.字段.变 ...

随机推荐

  1. keepalived原理

    Keepalived的作用是检测服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工 ...

  2. 怎么写jquery插件

    1. 添加js文件到html文件中,放下面的两行到html文档底部,</body>之前. <script src="js/jquery-1.9.1.min.js" ...

  3. Git学习之路(6)- 分支操作

    ▓▓▓▓▓▓ 大致介绍 几乎所有的版本控制系统都会支持分支操作,分支可以让你在不影响开发主线的情况下,随心所欲的实现你的想法,但是在大多数的版本控制系统中,这个过程的效率是非常低的.就比如我在没有学习 ...

  4. devexpress表格gridcontrol实现列统计,总计,平均,求和等。

    1.在许多项目中,经常要实现对某些列的统计.devexpress控件gridcontrol实现这些功能只需要设置某些属性,就可以达到要求了.以下例举了一个统计班级总数,人数总计,分数总计的案例.效果图 ...

  5. 用Ajax实现自动刷新news功能

    这是Ajax应用的一个小实例:在页面中自动刷新功能,比如整个新闻页面中某一个小版块的内容,无需刷新整个页面就可以自动更新: 1.首先创建简单的页面元素: <body> <input ...

  6. java后端学习流程

    首先,我个人比较推崇的学习方法是:先学java前段,也就是HTML,css,js,因为学习java以后肯定是往java ee方向发展的,学习完前端,在学习后端很多东西比计较容易理解! 其中J2SE是关 ...

  7. MJRefresh在UITableView中的使用

    前言 MJRefresh是一个好用的上下拉刷新的控件,github地址如下:https://github.com/CoderMJLee/MJRefresh 很多app都使用这个控件,我们也来了解一下它 ...

  8. [Qt初级] 解决 中QMainWindow和QDockWidget添加布局失败问题

    初接触Qt,使用的教程是陆文周编写的<Qt5开发及实例>一书. 其中有关于QDockWidget.QStackedWidget这些类的介绍和使用实例. 要首先说明的是书上讲的非常的清楚,代 ...

  9. KEEP!

    [list][*]别问我前端有没有前途,我不知道,我只知道我现在喜欢前端,以后也应该喜欢.[*]别问我前端的工作好不好找,不管哪一职位,工作好不好找都是看你的水平.[*]别问我前端累不累,这世界就没有 ...

  10. Linux CentOS下MySQL的安装配置之浅谈

    前期必备安装:VMware虚拟机,CentOS镜像[注意:Linux下使用CentOS   MySQL是不用在官网下载的,只需要配置就OK了] 下面开始正式操作: //CentOS安装MySQL之浅谈 ...