JAVA语言 未经本人允许禁止转载或使用
基础知识:JAVA数据类型,运算符,流程控制等
注释:

// 单行注释

/*
多行连续注释
...

*/

/**
文档注释,该类型的注释会生成一个html文件
...

*/

分隔符
,用于变量声明分割
. 将包及其子包名分开
; 表示一条语句结束,每条语句后面都要加;
() 在方法定义和调用中包含参数;在控制语句中包含表达式。
{} 包含自动初始化数组的值
[] 声明数据类型;也可表示撤销对数组值得引用

标识符:是赋予变量、类、方法和对象的名称

标识符以字母、下划线(_)或美元符号($)开头
第一个字母后可接字母,下划线,美元符号和数字
标识符大小写区别对待,且没有最大长度限制
在java系统中有一些标识符是系统定义好的,有专门用途,这些标识符为关键字或保留字,目前有49个,不能用作变量、类、方法和对象的名称

数据类型
8种基本的数据类型
布尔型:boolean
字符型:char
整型:byte,short,int,long
浮点型:float,double
1.在JAVA中布尔型和整数类型之间没有转换关系,禁止的。在C或C++允许
2.JAVA利用Unicode字符集表示字符,是16位(双字节)无符号(字符)数据类型
Unicode字符集的65535个字符要比C,C++的ASCII的255(8位,一字节)个字符多很多。
所有《可见的》UNIcode字符都可以加上单引号‘’如‘$’,'A';
还有一些不能直接加上单引号的特殊字符,需通过转义序列表示,如“'”表示单引号
\b, \r, \, \t, ", \ddd, \n, ', \uxxxx

在JAVA中所有数值类型大小均和平台无关,都是固定值,没有提供unsigned类型,均带有符号。
byte 8位 ((-2)^7 ~ 2^7-1)
short 16位 ((-2)^15 ~ 2^15-1)
int 32位 ((-2)^31 ~ 2^31-1)
long 64位 ((-2)^63 ~ 2^63-1)

整型(int)
最常用的整数类型,有符号(JAVA都有)32位的数据类型;int型变量常用于控制循环和数组下标的标识,在算术表达式,涉及到byte,short,int,long,在计算之前,较低的整型会被自动转换为最高的整数类型
如int i=1;
int除了表示十进制外,还可以表示八进制,十六进制,如:077 //第一位为0表示8进制;0x51AF //前两位为0x表示十六进制(A为10)

长整型(long)
long为64位的有符号数据类型,主要用于int型不能容纳的所希望的值的地方,
long型后有一个后缀“L”,必须要有的;;;
如“2155355245L”
如long a = 5435543544228L //定义一个长整型

浮点型(float和double)
浮点型数据就是带有小数部分的数字;

float是32位存储,数值后面有一个后缀“F“,必须要有的;;;;如2.23F
如果浮点数后面没有F,系统默认double类型 如2.232

在某些处理器cpu,float的处理速度比double的更快,而且占用空间只是double型的一半,但当数值变得很大或很小时,计算变得不精确;
float型变量定义如
float fo =123.45F //注意数值后面带有F

double使用64位存储,数值后面带有一个后缀”D“,(非必需,系统默认浮点型数不带后缀(F)都默认double型)
目前所有的数学函数都是double型,如sin(),cos(),tan()等

double型常用于多次迭代运算过程中保持《精确》或在操作很大的数;
变量定义如:double d1 = 73644.38478D
double d2 = sqrt(18)//取平方根

注意:使用浮点型数据,在遇到取值范围比其数据类型所能表示的最大范围还大的情形时会发生 上溢(Overflow)
在遇到取值范围比其数据类型所能表示的最小范围还小的情形时会发生 下溢(Underflow)。

在JAVA中各种数据类型必须先实例化才能用,数据类型实例化可分两种:常量和变量

常量:运行期间不能被修改的量,可分为普通常量和标识符常量;

重#定义一个常量需用final,在JAVA编码约定中,普通常量应全部大写并用下划线分割,对象常量可以大小写混用。

final double PI = 3.1415927 //定义一个double类型的常量

几个常用于表示最大最小的常数及几个溢出的常数;
MAX_VUALUE (最大值,Float.MAX_VALUE,Double.MAX_VALUE,下同)
MIN_VALUE (最小值,)
POSITIVE_INFINITY(正无穷大)
NEGATIVE_INFINITY (正无穷小)
NAN (0/0 溢出)

变量 基本的存储单位
type identifier [=value] [,identifier [=value],,,,,,,]
(声明)类型 标识符 可选的初始化部分(赋初值)

变量可分以下几种:局部变量,类成员变量,方法参数,异常处理参数
局部变量(作用域为其所在的方法或方法中一个代码块)
类成员变量(作用域其所在整个类)
方法参数(作用域是该参数被传递的方法)
异常处理参数(作用域是异常处理代码块,其作为参数传递给异常处理代码)

在JAVA中,任何变量必须经过初始化后才能使用,变量被创建时,在分配存储的同时会给初始化值如0,0,0,0,0L,0.0F,0.0D,‘\u0000’(char),false,null(引用类型变量)

JAVA基础之复识二的更多相关文章

  1. JAVA基础之复识一

    JAVA不单是一门计算机编程语言,而且还是一种基于WEB的全方位软件开发技术, java特定运行平台及关键特点 java开发工具包的安装,配置与应用 java语言的基本概念 java面向对象编程 ja ...

  2. JAVA基础再回首(二十五)——Lock锁的使用、死锁问题、多线程生产者和消费者、线程池、匿名内部类使用多线程、定时器、面试题

    JAVA基础再回首(二十五)--Lock锁的使用.死锁问题.多线程生产者和消费者.线程池.匿名内部类使用多线程.定时器.面试题 版权声明:转载必须注明本文转自程序猿杜鹏程的博客:http://blog ...

  3. java基础-引用数据类型之二维数组(Array)

    java基础-引用数据类型之二维数组(Array) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 之前我们学习过了Java的一维数组,所谓的二维数组就是元素是一堆一维数组的数组,换 ...

  4. JAVA基础——编程练习(二)

    JAVA编程练习(二) 今天我为了巩固之前的java基础知识的学习,再次进行实战演习,编写了一个小小的java控制台程序,主要是运用java面向对象的思想来完成这个小项目. 一.项目背景介绍 根据所学 ...

  5. java基础梳理--朝花夕拾(二)

    1.Java语言语法规则和文件格式: 第一个Java程序:/** 第一个Java程序:控制台输出Hello world!*/public class Test{    //访问修饰符 class关键词 ...

  6. java基础知识一览(二)

    一.java基础知识 1.一个文件中只能有一个public的类,因为他的类名要求和文件名相同. 2.classpath变量可以设置其它目录下的类. 例如:类文件所在目录是:F:\Javajdk,那么没 ...

  7. Java基础学习总结(二)

    Java语言的特点: Java语言是简单的 Java语言是面向对象的 Java语言是跨平台(操作系统)的(即一次编写,到处运行) Java是高性能的 运行Java程序要安装和配置JDK jdk是什么? ...

  8. JAVA基础学习day20--IO流二-缓冲流、字节流

    一.缓冲流 1.1.字符流的缓冲区 缓冲区的出现是为了提高IO的读写效率 对应类 BufferedReader BufferedWriter 缓冲区要结合流才可以使用 在流的基础上对流的功能进行了增强 ...

  9. java基础学习总结——线程(二)

    一.线程的优先级别

随机推荐

  1. Packt发布了2018年技能提升报告

    2018年技能提升报告Skill Up 2018 - Developer Skills Report | PACKT Bookshttps://www.packtpub.com/skill-up-20 ...

  2. bzoj1594 Pku3764 The xor-longest Path

    题目链接 先求每个点到根的异或和 然后就要找出两个点,使dis[a]^dis[b]最大 注意异或的性质,我们可以用trie树,沿着与当前数字每位的相反方向走 #include<algorithm ...

  3. dalaozouleyeyaojianqiangdehuoxiaqu

    dalaozouleyeyaojianqiangdehuoxiaqu 没错,YY又开始哔哔了,非常不淡定,发个博客冷静一下反正没人看 好吧他们还是退役了,关键是我昨天竟然没看到博文???? (我是不会 ...

  4. 给PXC集群加密

    MySQL的复制时明文的,不管是集群的复制还是IST/SST,直接通过抓包就可以抓取数据. 生成证书 直接使用 mysql_ssl_rsa_setup mysql_ssl_rsa_setup --da ...

  5. DOM EventListener

    向元素添加事件句柄的语法:element.addEventListener(event, function, useCapture); 第一个参数是事件的类型,如click或者mousedown,注意 ...

  6. P1382 楼房

    P1382 楼房 每个矩形拆成2个坐标按$x$轴排序,蓝后$multiset$维护最高值. #include<iostream> #include<cstring> #incl ...

  7. Windows环境下ELK平台的搭建

    .背景 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的错误及错误发生的原因.经常分析日志可以了解服务器的负荷,性能安全性,从而及时采 ...

  8. Eclipse中已安装的插件如何卸载

    最近在Eclipse中安装了一个插件,导致Eclipse使用的时候有些问题,就找了资料,原来Eclipse中的插件也是可以卸载的. 方法是点击菜单“Help”,“Install New Softwar ...

  9. UVa 11019 Matrix Matcher - Hash

    题目传送门 快速的vjudge传送门 快速的UVa传送门 题目大意 给定两个矩阵S和T,问T在S中出现了多少次. 不会AC自动机做法. 考虑一维的字符串Hash怎么做. 对于一个长度为$l$的字符串$ ...

  10. Job for php-fpm.service failed because the control process exited with error code. See "systemctl status php-fpm.service" and "journalctl -xe" for details.

    [root@web01 ~]#  systemctl start php-fpm Job for php-fpm.service failed because the control process ...