【Java基础总结】Java基础语法篇(上)
Java基础语法
思维导图
一、Java语言介绍
1.Java应用平台
JavaSE(Java Platform Standard Edition):开发普通桌面和商务应用程序,是另外两类的基础
JavaEE(Java Platform Enterprise Edition):是为开发企业环境下的应用程序提供的一套解决方案,包含Servlet、Jsp等,主要针对Web应用程序开发
JavaME(Java Platform Micro Edition):是为开发电子消费产品和嵌入式设备提供的解决方案
2.JRE和JDK
JRE(Java Runtime Environment):Java运行环境
JDK(Java Development Kit Java):Java开发工具包
注释
单行注释:
多行注释:
文档注释:
关键字
特点:
1.字母全部小写
2.有特殊颜色标记
常量
程序执行时不会发生改变,分类有:
变量
概述:
是内存中的一小块区域。程序执行时,值可以在一定范围内发生改变
限制:
1.必须通过数据类型限制区域
2.必须给区域一个变量名
3.必须要有初始化值
格式:
注意事项:
1.变量没有赋值不能直接使用
2.变量只在它所属的范围内有效(也就是它所属于的那对大括号内)
3.一行可以定义多个变量,但是不建议
数据类型
Java是一种强类型语言,针对每一个数据都给出了明确的数据类型
大致可以分为两个大类:
1.基本数据类型:
注意事项:
1.一般整数默认是int类型,浮点数默认是double类型
2.想要定义long类型数据时,要在值后面加L或者l,一般推荐L
3.想要定义float类型数据时
2.引用数据类型:
1) class (类)
2) interface (接口)
3) array (数组)
标识符
概述:用来给包,类,变量,方法等起名字的符号
组成规则:
1.unicode字符
数字
英文大小写字母
汉字(不建议使用)
2.下划线 "_"
3.美元符 "$"
注意事项:
1.不能以数字开头
2.不能是java中的关键字
类型转换
1.隐式转换:
byte,short,char首先都会提升为int类型再参与运算,如果一个运算中有long类型,最后运算必须提升为long类型,如果有float类型就提升为float,如果有double类型就提升为double
2.强制转换:
目标类型变量名 = (目标类型) (被转换的数据)
虽然可以做强制转换,但是不建议,因为强制转换可能会有数据的丢失
运算符
分为六种:
1.算术运算符:+,-,*,/,%
1) 整数相除只能得到整数,只有浮点数参与运算时才能得到小数
2) 字符参与加法运算时,是拿该字符在计算机中存储的数据值来运算的(‘a’ = 97,b = 98… / ‘A’ = 65,‘B’ = 66… / ‘0’ = 48,‘1’ = 49…)
3) 字符串参与加法运算时,不是加法,是字符串的拼接
System.out.println(“hello”+“world”)=helloworld
System.out.println(“hello”+10)=hello10
System.out.println(“hello”+10+20)=hello1020
System.out.println(10+20+“hello”)=30hello
2.自增自减运算符:++,–(就是自己+1或者-1)
3.赋值运算符:
基本赋值运算符:=
扩展赋值运算符:+=,-=…
1) 把运算符左边的数据和右边的数据进行运算,然后把结果赋值给左边
2) 隐含了强制类型转换
a += 20;就相当于a = (a的数据类型) (a + 20);
4.关系运算符:==,!=,>,>=,<,<=(操作完毕的结果为布尔类型)
5.逻辑运算符
&&:逻辑与,是并且的关系,有false则false
||:逻辑或,有true则true
!:逻辑非,单独使用,true则false,false则true
6.三元运算符 ★
格式:关系表达式 ? 表达式1 : 表达式2;
关系表达式的值为true,则表达式1为结果,如果是false,则表达式2为结果
Scanner(键盘录入)
流程控制语句
一共有三种结构:
1.顺序结构:最简单最基本的流程控制结构,先后顺序,依次执行
2.选择结构(分支结构):
一共有两种:
① if语句(三种结构):
a.首先计算关系表达式看其结果是true还是false,如果是true就执行语句体,如果是false就不执行语句体
b.首先计算关系表达式看其结果是true还是false,如果是true就执行语句体1,如果是false就执行语句体2
c.首先计算关系表达式看其结果是true还是false,如果是true就执行语句体1,如果是false就继续判断关系表达式2看其结果是true还是false,如果是true就执行语句体2,如果是false就继续判断关系表达式…看其结果是true还是false……如果没有任何关系表达式为true,就执行语句体n+1
② switch语句:
计算表达式的值,拿着这个值依次和case进行比对,一旦有匹配的,就执行对应的语句,在执行的过程中,遇到break就结束,如果所有的case都不匹配,就执行语句体n+1
循环结构
循环结构由初始化语句、判断条件语句、循环体语句和控制条件语句组成
初始化语句:一条或者多条语句,用来完成一些初始化操作
判断条件语句:boolean表达式,这个表达式能决定是否执行循环体语句
循环体语句:顾名思义,重复性高,多次要做的事
控制条件语句:这个部分是在一次循环体结束后,下一次循环判断条件执行前执行的。通过用于控制循环条件中的变量,使得循环在合适的时候结束
1.for循环语句
2.while循环语句
3.do…while循环语句
4.for循环、while循环和do…while循环的区别
1)do…while循环语句至少执行一次循环体;
2)而for和while循环语句要先进行条件的判断,然后看是否执行循环体语句;
①for循环结束后,初始化的变量不能被使用
②而while循环初始化的变量还可以继续被使用
3)能用for就用for,其次是while,最后是do…while;
变量占用内存的一小块区域,for能让变量极早地从内存释放,有利于提高内存使用率
跳转控制语句
概述:让循环在某一步的时候结束或者跳过某些数据不要
break:
1.使用场景:
1) 在switch语句中,用于结束switch语句
2) 循环语句中,用于结束循环
continue:
1.使用场景:循环语句中
Random(随机数)
【Java基础总结】Java基础语法篇(上)的更多相关文章
- Java学习之旅基础知识篇:面向对象之封装、继承及多态
Java是一种面向对象设计的高级语言,支持继承.封装和多态三大基本特征,首先我们从面向对象两大概念:类和对象(也称为实例)谈起.来看看最基本的类定义语法: /*命名规则: *类名(首字母大写,多个单词 ...
- Java学习之旅基础知识篇:数据类型及流程控制
经过开篇对Java运行机制及相关环境搭建,本篇主要讨论Java程序开发的基础知识点,我简单的梳理一下.在讲解数据类型之前,我顺便提及一下Java注释:单行注释.多行注释以及文档注释,这里重点强调文档注 ...
- Java面试题之基础篇概览
Java面试题之基础篇概览 1.一个“.java”源文件中是否可以包含多个类(不是内部类)?有什么限制? 可以有多个类,但只能有一个public的类,且public的类名必须与文件名相一致. 2.Ja ...
- 【Java基础】Java中的语法糖
目录 Java中的语法糖 switch对String和枚举类的支持 对泛型的支持 包装类型的自动装箱和拆箱 变长方法参数 枚举 内部类 条件编译 断言 数值字面量 for-each try-with- ...
- [Java 教程 04] Java基础语法
在上一篇文章中我们已经运行了个简单的java程序,但是没有给大家讲解代码部分的内容与含义.学习,我们要做到知其然而知其所以然,所以本篇文章我们就来讲解java程序的基本语法,学完这篇文章你再回头看上篇 ...
- Java入门基础知识点总结(详细篇)
Java入门基础知识点总结(详细篇)~~~~~目录 1.1 图解 1.1.1 Java基础知识点 1.1.2 Java基础语法的相关内容 1.2 关键字 1.3 标识符 1.3.1 标识符概念 1.3 ...
- 零基础学Java第一节(语法格式、数据类型)
本篇文章是<零基础学Java>专栏的第一篇文章,从本篇文章开始,将会连更本专栏,带领大家将Java基础知识彻底学懂,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! ...
- JAVA 入门第一章(语法基础)
本人初学java 博客分享记录一下自己的学习历程 java我的初步学习分为六章,有c和c++的基础学起来也简便了很多. 第一章 语法基础 第二章 面向对象 第三章 常用工具类 第四章 文件操纵 第五章 ...
- #Java学习之路——基础阶段(第三篇)
我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容. 前言: ...
随机推荐
- 小波变换在matlab中的使用
对信号进行一层分解 clc; clear; % 获取噪声信号 load('matlab.mat'); sig = M(1,1:1400); SignalLength = length(sig); %使 ...
- Daily Scrum 1/5/2015
Process: Zhaoyang: Fix some crash bugs and increase the program stability. Yangdong: Complete some b ...
- I. Same String
有两个只由小写字母组成的长度为n的字符串s1,s2和m组字母对应关系,每一组关系由两个字母c1和c2组成,代表c1可以直接变成c2,你需要判断s1是否可以通过这m组关系转换为s2. 输入格式 第一行输 ...
- [linux] 小问题:管道符,换行问题等;[nginx]启动,重启,关闭命令;以及升级nginx切换命令
Lniux换行问题 后面回车不会马上执行本条命令而是换行继续. : 是运行完前面就继续后面的, && 同样是前面正确就运行后面, || 是前面运行不正确就运行后面. | 管道符“|”将 ...
- ArangoDB 3.5:流事务API、搜索性能大幅提升、最短路径功能
ArangoDB 3.5 发布了.ArangoDB 是一个分布式原生的多模型数据库,具有灵活的文档.图形和键值数据模型.使用方便的 SQL 查询语言或 JavaScript 扩展构建高性能应用程序. ...
- <algorithm>中常用函数
先说一下STL操作的区间是 [a, b),左边是闭区间,右边是开区间,这是STL的特性,所以<algorithm>里面的函数操作的区间也都是 [a, b). 先声明一下, sort()函数 ...
- 手把手编写自己的PHP MVC框架实例教程
1 什么是MVC MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式. MVC把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Contro ...
- 安卓微信浏览器中window.location.href失效的问题
最近接手一微信项目,测试功能时,发现跳转在android手机上不动了.iso系统可以正常跳转的.解决方法: window.location.href = url + '?v=' + (new Date ...
- RedHat 的 crontab
Chapter 39. Automated Tasks In Linux, tasks can be configured to run automatically within a specifie ...
- 日志分析工具ELK(一)
一.ELK介绍 1.1 elasticsearch 1.1.1 elasticsearch介绍 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎 ...