一、数据类型及变量名和注释

1. Java 中的数据类型分为两大类:

1) 原生数据类型 (Primitive Data Type) :8个(byte、char、short、int、long、float、double、Boolean)

l 整型:使用 int 表示。 (32 位)

l  字节型:使用 byte 表示。 (表示-128~127 之间的 256 个整数) 。

关于计算机系统中的数据表示 位:bit(只有 0,1 两种状态),是计算机系统中的最小数据表示单位。 字节:byte, 1 byte = 8 bit。 1 KB = 1024 Byte (1Kg = 1000g,与计算机系统不同) 1 MB = 1024 KB 1 GB = 1024 MB

l 短整型:使用 short 表示。 (16 位)

l 长整型:使用 long 表示。(64 位)

l 单精度浮点型:使用 float 表示。所谓浮点型,指的就是小数,也叫做实数,比如 1.2

l 双精度浮点型:使用 double 表示。双精度浮点型表示的数据范围要比单精度浮点型大

l 字符型:使用 char 表示(char 是 character 的缩写)。所谓字符,就是单个的字符表示, 比如字母 a,或者中文张,外面用单引号包围上。比如 char a = ‘B’; char b = ‘张’;

l 布尔类型,使用 boolean 表示。布尔类型只有两种可能值,分别是 true 与 false。

补充:

ps:参考32位机

2) 引用类型(对象类型) (Reference Type)  :前面的原生都有对应的:例如:Float(float),interger(int)……

2. 变量与常量:

常量:就是值不会变化的量;变量:就是值可以变化的量。

2.1 命名

变量类型 变量名; int a;

2.2 赋值

变量名 = 变量值; a = 2;

ps:此处小彩蛋:= 表示赋值,将等号右边的值赋给了左边的变量。 Java 中使用==表示相等,等价于数学中的=。  

3. 变量名:

在 Java 中,变量名以下划线、字母、$符号开头,并且后跟下划线、 字母、$符号以及数字。

4. Java中的类型转换(关键节了哈)

4.1. Java 中的所有浮点类型默认情况下都是 double。不能将 double 类型的值赋给 float 类型 的变量,即便该 double 类型的值处于 float 类型的范围内也是不可以的。总之,能否成 功赋值取决于等号右边的值类型与等号左边的变量类型是否一致。

4.2.  将 double 类型的值赋给 float 类型的变量:

4.2.1 强制类型转换,将 double 类 型的值强制转换为 float 类型。

4.2.2使用 java 预言的支持。 强制转换的语法: 类型 变量名 = (类型)变量值;

4.3. 变量在使用前必须要赋值;变量必须要声明其类型方可使用;变量在使用前必须要定义, 并且只能定义一次。

4.4. 如下代码无法通过编译:

int a = 1;

short b = a;

a 是 int 类型,b 是 short 类型,int 类型表示的数据范围要比 short 类型大,不能将表示 范围大的值赋给表示范围小的变量。

如下代码可以通过编译:

short a = 1;

int b = a;

a 是 short 类型,b 是 int 类型,int 类型表示的数据范围要比 short 类型大,可以将表示 范围小的值赋给表示范围大的变量。

总结:可以将表示范围小的值赋给表示范围大的变量;但不能直接将表示范围大的值赋 给表示范围小的变量,只能通过强制类型转换实现。

ps:小的空间可以赋值给大的空间(因为大嘛),而大的空间赋给小的空间就只能强制转换了(毕竟不够大233)

4.5 类型的自动提升:

4.5.1 若执行运算且其中的基本类型小于int,则会提升为int

例子:

char a,b;

a=1;b=2;

int c=a+b;//类型被自动提升为了int

4.5.2 执行运算中类型会被转化为高类型:

例子:

double a=1.0;

int b=2;

double c=a/b;//结果转化为double类型

还有一些小细节:

我贴一张我的练习代码君:供参考:

5. 注释。

Java 中共有 3 种类型的注释: 

l 单行注释:以//开头,//后面的所有内容均被当作注释处理。

l 多行注释:以/*开头,以*/结束,中间的所有内容均被 当作注释处理。多行注释来源于 C/C++。关于多行注释,需要注意的是,多行注释不能嵌套。

l 另一种多行注释。用于产生 Java Doc 帮助文档。暂且不介绍。

二、 运算符 Operator

1. 关系运算符:

大于(>)、小于(<)、等于(==)、不等于(!=)、大于等于(>=)、小于等 于(<=),关系运算的结果是个 boolean 值。

2.  逻辑运算符:重点讲解两个,逻辑运算符本身也返回一个 boolean 值。

2.1 逻辑与:使用&&表示,逻辑与是个双目运算符(即有两个操作数的运算符),只有 当两个操作数都为真的时候,结果才为真;其余情况结果均为假。逻辑与表示的并 且的意思。

2.2 逻辑或:使用||表示,逻辑或也是个双目运算符,只有当两个操作数都为假的时候, 结果才为假;其余情况结果均为真。逻辑或表示或者的意思。

关于逻辑运算符的短路特性。

2.3 短路

2.3.1 逻辑与:如果第一个操作数为 false,那么结果肯定就是 false,所以在这种情况下, 将不会执行逻辑与后面的运算了,即发生了短路。

2.3.2 逻辑或:如果第一个操作数为 true,那么结果肯定就是 true,所在在这种情况下, 将不会执行逻辑或后面的运算了,即发生了短路。

3. 关于变量的自增与自减运算。

关于 int b = a++,作用是将 a 的值先赋给 b,然后再让 a 自增 1.

关于 int b = ++a,作用是将 a 的值先自增 1,然后将自增后的结果赋给 b。

三、运算符以及控制流

1. 条件运算符(三元表达式),其形式为

type d = a ? b : c;

具体化形式为:int d = 2 < 1 ? 3 : 4;

ps:可看成两部分:?前分为一部分:F,后为另一部分L:

F表判断:

1.true:取L中的前部分,即例子中的 3

2.false:取L中的后部分,即例子中的 4

2. 流程控制语句 if 的用法为:  

第一种形式:

if(布尔表达式){

//待执行的代码

}

第二种形式:

if(布尔表达式) {

//待执行的代码 } else {

//待执行的代码

}

第三种形式:

if(布尔表达式){

//待执行的代码

} else if(布尔表达式) {

//待执行的代码

} else if(布尔表达式) {

//待执行的代码

} else {

//待执行的代码

}

3. switch 语句,使用形式为:

switch(变量) // byte, short, int, char等(注:jdk7以后是支持String的){

case 常量 1:    //待执行的代码

break;

case 常量 2:    //待执行的代码

break; case

常量 3:    //待执行的代码

break;

default:    //待执行的代

码 }

虽然 case 语句中的 break 是可选的,但在绝大多数情况下,如果没有 break,程序的逻 辑就会发生错误,因此,通常情况下都需要加上break。

4. Java 中的循环控制语句一共有 3
种,分别是 while,do…
while 以及
for 循环。

4.1 while 循环,形式为:

while(布尔表达式) {

//待执行的代码

}

4.2 do…while
循环,新式为:

do {

//待执行的代码 } while(布尔表达式);

}

ps:while 与
do…while
之间的区别:如果布尔表达式的第一次判断就为
false,那么
while
循 环一次也不执行;do…while
循环则会执行一次。如果布尔表达式第一次判断为
true, 那么
while
循环与 do…while
循环等价。 

4.3. for 循环(使用最多的一种循环),形式为:

for(变量初始化;
条件判断;
步进) {

//待执行的代码 }

for 循环的执行过程:

1) 执行变量初始化。

2) 执行条件判断。如果条件判断结果为假,那么退出 for
循环,开始执行循环后面的 代码;如果条件判断为真,执行 for
循环里面的代码。

3) 执行步进。

4) 重复步骤 2。

break 语句:经常用在循环语句中,用于跳出整个循环,执行循环后面的代码。

continue 语句:经常用在循环语句中,用于跳出当前的这个循环(或者是跳出本次循环) , 开始下一次循环的执行。

break 与 continue 可以搭配标签使用,在实际开发中,根本没有人会将 break 与 continue 搭配标签来使用。

//此处以后会添加一个超链接:对continue和break的解析:先留着位置

5.移位符(再加一个移位符吧):

直接贴我的练习代码君了:



PS:转载请注明出处(有补充请留言)!

另:共同学习,共同进步,迈向社会主义新时代\(^o^)/~

JAVA基础总结一:的更多相关文章

  1. Java基础知识(壹)

    写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...

  2. [Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等)

    如若转载请注明出处: http://www.cnblogs.com/wang-meng/p/5898837.html   谢谢.上一篇发了一个找工作的面经, 找工作不宜, 希望这一篇的内容能够帮助到大 ...

  3. 【JAVA面试题系列一】面试题总汇--JAVA基础部分

    JAVA基础 基础部分的顺序: 基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法 线程的语法,集合的语法,io 的语法,虚拟机方面的语法 每天几道,持续更新!! 1.一个". ...

  4. 最适合作为Java基础面试题之Singleton模式

    看似只是最简单的一种设计模式,可细细挖掘,static.synchronized.volatile关键字.内部类.对象克隆.序列化.枚举类型.反射和类加载机制等基础却又不易理解透彻的Java知识纷纷呼 ...

  5. java基础练习 字符串,控制流,日历,日期等

    1,对基本控制流程的一些练习 package org.base.practice3; import org.junit.Test; /** * Created with IntelliJ IDEA. ...

  6. Java基础知识【下】( 转载)

    http://blog.csdn.net/silentbalanceyh/article/details/4608360 (最终还是决定重新写一份Java基础相关的内容,原来因为在写这一个章节的时候没 ...

  7. Java基础知识【上】(转载)

    http://blog.csdn.net/silentbalanceyh/article/details/4608272 (最终还是决定重新写一份Java基础相关的内容,原来因为在写这一个章节的时候没 ...

  8. java基础学习03(java基础程序设计)

    java基础程序设计 一.完成的目标 1. 掌握java中的数据类型划分 2. 8种基本数据类型的使用及数据类型转换 3. 位运算.运算符.表达式 4. 判断.循环语句的使用 5. break和con ...

  9. Java基础加强之多线程篇(线程创建与终止、互斥、通信、本地变量)

    线程创建与终止 线程创建 Thread类与Runnable接口的关系 public interface Runnable { public abstract void run(); } public ...

  10. java基础知识小总结【转】

    java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...

随机推荐

  1. bzoj 2243: [SDOI2011]染色

    #include<cstdio> #include<iostream> #define M 1000006 #define N 1000006 using namespace ...

  2. 如何在android项目中引用project作为类库引用

    前言: 在我们开发项目的时候,存在很多多个项目共有一个资源.逻辑代码的情况,这种情况一般我们采用在开发项目中导入别的项目作为引用的类库.资源等. 操作: 1.  新建一个android项目common ...

  3. javaee 集锦

    1.struts2 的配置随版本不同改变,可以使用struts2-blank包生成标准空白项目

  4. uboot启动 及命令分析(3)

    u-boot命令 先贴一个重要结构,位于uboot/include/command.h,这个结构代表每个uboot命令 struct cmd_tbl_s { char     *name;   /* ...

  5. WDCP安装常用组件(memcache、mysqli、PDO_MYSQL、mysql innodb、libmcrypt、php zip)的方法

    为有更好的性能,也为更简洁的系统,一些不是常用或不是基本的功能,都将做为可选的安装组件需要用到的就安装 注意:如果安装时遇到 ./configure: Permission denied提示,很有可能 ...

  6. Linux-VLAN

    Why Vlan? VLAN是为解决以太网的广播问题和安全性而提出的一种协议,它在以太网帧的基础上增加了VLAN头,用VLAN ID把用户划分为更小的工作组,限制不同工作组间的用户二层互访,每个工作组 ...

  7. root运行chrome

    os:centos7 edit file : /usr/bin/google-chrome Add "--user-data-dir" (without the quotes) a ...

  8. jQuery中 end(); 的用法

    jQuery中的end()方法的意思 选取某个元素,查找选取其子元素,然后再回过来选取这个元素.用例子说明了一下: 比如HTML代码: <p><span>Hello</s ...

  9. MyEclipse 安装目录下找不到Common目录

    最近在安装了MyEclipse,由于是自己指定的安装目录,在成功安装后要破解的时候却发现找不到安装目录下的Common目录,很是郁闷,后来发现如下: MyEclipse启动后的上方导航中找到MyEcl ...

  10. HackRF实现ADS-B飞机信号跟踪定位

    硬件平台:HackRF One软件平台:MAC运行环境搭建系统平台:OS X 10.11 EI Capitan文章特点:捕捉程序支持HackRF One且基于MAC平台验证通过有效. 1. 原理概述 ...