JAVA学习总结-基础语法
/**
* 这篇文章供自己学习JAVA总结回顾使用
* 主要借鉴了马士兵老师的视频进行总结
* @author Kingram
*/
标识符的概念和命名规则

JAVA常量---不可变的变量
程序的执行过程

从现在开始,你应该记住,内存里分四块区域,code segment,data segment,stack,heap,真正执行的时候,代码首先放到code segment里面,虚拟机找到相关的main方法,然后开始噼里啪啦噼里啪啦的执行,在执行的过程中,会牵扯到其他三块内存区域.因为执行的时候需要在不同的区域分配内存.
JAVA变量
1,java中的变量是程序中最小的存储单元,其要素包括变量名,变量类型,作用域.
2,java程序中每一个变量都属于特定的数据类型,在使用前必须先声明,再赋值.
JAVA变量的作用域
凡是在大括号里面声明的变量,出了这个大括号就没人认识它了.(为什么不能说方法和类,因为在if语句和循环语句中,出了语句就没人认识它了).
JAVA变量的分类

注意:方法的参数是局部变量
JAVA数据类型的划分

基本数据类型包括四类八种,依据内存里所占空间的大小区分,大小相同时也有可能内存中布局不同(0101的排列不同);
char类型;

java字符采用Unicode编码,每个字符占俩个字节,因而可以使用16进制编码表示(编码问题:无论是任何东西在计算机里面都是用 0101表示,每个0每个1叫做bit(位),一个字节占8位,所有的文字都可以使用0101表示,但是不同的文字可能占的0101的个数不一样,一个字节最多能表示2^8个字符,所以表示不了中文,Unicode包括了世界上所有的语言.)
整数类型;


JAVA里没有无符号的整数,所有的整数都是带符号位的,所以int类型的表述范围是-2^7-2^7-1.
浮点类型


计算机内部表示浮点数是有误差的,情况复杂,有待深究.
基本数据类型转换

字符型在计算机内部也是数字,所以也可以进行运算,
long a = 123;// 相当于把一个int类型转换为long类型;
float a = 12.3;// 相当与把一个double转换为float,需要加上强制转换负符;
long l = 3000000000000;// 必须加L,3000000000000超出了int类型的表示范围;

int类型占四个字节,要想转换成byte类型,就把三个字节咔嚓砍掉,剩下的字节是几就是几;但是double转换成float不行,计算机内部有专门表示小数点的位,直接砍掉内部的格式就不对了.
float类型转换成long类型,直接把小数部分咔嚓砍掉.
运算符

int i = j++;先赋值再运算;
int i = ++j;先运算在赋值;

三目: (boolean表达式) ? y : z;
如果boolean值为true则返回y,如果boolean值为false,则返回false;
语句
条件语句--根据不同条件,执行不同语句.
if() { }
if() { } else { }
if() { } else if() { }
if() { } else if() { } else if() { } else { }
循环语句--重复执行某些动作
for(表达式1;表达式2;表达式3) {语句;...; }
首先执行计算表达式1,接着执行表达式2,若表达式2的值=true,则执行语句,接着计算表达式3,再判断表达式2的值,依次重复下去,直到表达式2的值=false;
for语句中三个表达式都可以省略.
while(逻辑表达式) {语句;...; }
先判断逻辑表达式的值,若=true.则执行其后面的语句,然后再次判断条件并反复执行,直到条件不成立为止.
do {语句;..; } while(逻辑表达式);
先执行语句,再判断表达式的值,若为true,再执行语句,否则结束循环.
break & continue 语句
break语句用于终止某个语句块的执行,用在循环语句中,可以强行退出循环;
continue语句用在循环语句体中,用于终止某次循环过程,跳过循环体中continue语句下面的未执行的循环,开始下一次的循环过程.
switch() {
case xx :
...
break;
defalt :
...
break;
}
小心case穿透!多个case可以合并到一起!default可以省略.
JAVA学习总结-基础语法的更多相关文章
- Java学习笔记-基础语法Ⅳ
多态:同一个对象,在不同时刻表现出来的不同形态 例如: 猫 cat = new 猫(); 动物 animal = new 猫(); 这里的猫在不同时刻表现出来不同的形态,这就是多态 多态的前提和体现: ...
- Java学习笔记-基础语法
Java基础包含关键字,标识符,注释,常量和变量,运算符 关键字 关键字的定义和特点 定义:被Java语言赋予了特殊含义的单词 特点:关键字中所有字母都为小写 Java的关键字 用于定义数据类型的关键 ...
- Java学习笔记-基础语法Ⅹ-进程线程
学习快一个月了,现在学到了黑马Java教程的300集 打印流的特点: 只负责输出数据,不负责读取数据 有自己的特有方法 字节打印流:PrintStream,使用指定的文件名创建新的打印流 import ...
- Java学习笔记-基础语法Ⅷ-泛型、Map
泛型 泛型本质上是参数化类型,也就是说所操作的数据类型被指定为一个参数,即将类型由原来的具体的类型参数化,然后在使用/调用时传入具体的类型,这种参数类型可以用在类.方法和接口中,分别为泛型类.泛型方法 ...
- Java学习笔记-基础语法Ⅴ
学习一些Java常用的API Math:包含执行基本数字运算的方法 如果没有构造方法,一般类的成员都是静态的,通过类名可以直接调用 Java中有两种random函数,Math.Random()函数能够 ...
- JAVA 学习笔记 - 基础语法 2
---恢复内容开始--- 1.数组的申明和应用 数据类型 数组名称[] = null; //在堆栈中申明变量名称 数组名称 = new 数据类型[10]; // ...
- JAVA 学习笔记 - 基础语法1
1. 类的定义 public class 与 class的区别 一个java文件只有一个public class, 而且类名必须与文件名一致. 一个java文件可以有多个class定义,javac ...
- Java学习笔记-基础语法ⅩⅠ-UDP、TCP
网络编程 三要素:IP地址.端口.协议 IP地址:使用ipconfig查看,如果装了VM的话,会有VMnet1.VMnet8和WLAN,net1不能从虚拟机到主机,net8不能从主机到虚拟机,net0 ...
- Java学习笔记-基础语法Ⅸ-文件
File File是文件和路径名的抽象表示,File封装的并不是一个真正存在的文件,是一个路径名,可以存在也可以不存在 常用方法: 创建文件:createNewFile() 创建目录:mkdir() ...
随机推荐
- linux下的epoll怎样高效处理百万连接
开发高性能网络程序时.windows开发人员们言必称iocp,linux开发人员们则言必称epoll.大家都明确epoll是一种IO多路复用技术,能够很高效的处理数以百万计的socket句柄,比起曾经 ...
- 1064. Complete Binary Search Tree (30)【二叉树】——PAT (Advanced Level) Practise
题目信息 1064. Complete Binary Search Tree (30) 时间限制100 ms 内存限制65536 kB 代码长度限制16000 B A Binary Search Tr ...
- CodeForces 16B Burglar and Matches(贪心)
B. Burglar and Matches time limit per test 0.5 second memory limit per test 64 megabytes input stand ...
- Codeforces Round #272 (Div. 2) Dreamoon and WiFi 暴力
B. Dreamoon and WiFi Dreamoon is standing at the position 0 on a number line. Drazil is sending a li ...
- J - 玩游戏
小A和小B玩游戏,初始的时候小A给小B一组包含n个数的数组.他们按如下的规则进行: 每次小B得到一组数,他把这组数的和加到自己的分数里面(他的初始分数是0),然后他把这组数还给小A. 如果小A得到的这 ...
- luogu 1939 【模板】矩阵加速(数列)
题目大意: a[1]=a[2]=a[3]=1 a[x]=a[x-3]+a[x-1] (x>3) 求a数列的第n项%1000000007 思路: 使用矩阵快速幂进行加速 在草稿纸上填了填数 然后就 ...
- Java - HashTable、HashMap和LinkedHashMap的区别
一般情况下,我们用的最多的是HashMap,在Map 中插入.删除和定位元素,HashMap 是最好的选择.但如果您要按自然顺序或自定义顺序遍历键,那么TreeMap会更好.如果需要输出的顺序和输入的 ...
- [Swift通天遁地]七、数据与安全-(4)CoreData数据的增、删、改、查
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- java 锁机制(synchronized 与 Lock)
在java中,解决同步问题,很多时候都会使用到synchronized和Lock,这两者都是在多线程并发时候常使用的锁机制. synchronized是java中的一个关键字,也就是说是java内置的 ...
- Kafka的3节点集群详细启动步骤(Zookeeper是外装)
首先,声明,kafka集群是搭建在hadoop1.hadoop2和hadoop3机器上. kafka_2.10-0.8.1.1.tgz的1或3节点集群的下载.安装和配置(图文详细教程)绝对干货 如下分 ...