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.隐式转换

byteshortchar首先都会提升为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基础语法篇(上)的更多相关文章

  1. Java学习之旅基础知识篇:面向对象之封装、继承及多态

    Java是一种面向对象设计的高级语言,支持继承.封装和多态三大基本特征,首先我们从面向对象两大概念:类和对象(也称为实例)谈起.来看看最基本的类定义语法: /*命名规则: *类名(首字母大写,多个单词 ...

  2. Java学习之旅基础知识篇:数据类型及流程控制

    经过开篇对Java运行机制及相关环境搭建,本篇主要讨论Java程序开发的基础知识点,我简单的梳理一下.在讲解数据类型之前,我顺便提及一下Java注释:单行注释.多行注释以及文档注释,这里重点强调文档注 ...

  3. Java面试题之基础篇概览

    Java面试题之基础篇概览 1.一个“.java”源文件中是否可以包含多个类(不是内部类)?有什么限制? 可以有多个类,但只能有一个public的类,且public的类名必须与文件名相一致. 2.Ja ...

  4. 【Java基础】Java中的语法糖

    目录 Java中的语法糖 switch对String和枚举类的支持 对泛型的支持 包装类型的自动装箱和拆箱 变长方法参数 枚举 内部类 条件编译 断言 数值字面量 for-each try-with- ...

  5. [Java 教程 04] Java基础语法

    在上一篇文章中我们已经运行了个简单的java程序,但是没有给大家讲解代码部分的内容与含义.学习,我们要做到知其然而知其所以然,所以本篇文章我们就来讲解java程序的基本语法,学完这篇文章你再回头看上篇 ...

  6. Java入门基础知识点总结(详细篇)

    Java入门基础知识点总结(详细篇)~~~~~目录 1.1 图解 1.1.1 Java基础知识点 1.1.2 Java基础语法的相关内容 1.2 关键字 1.3 标识符 1.3.1 标识符概念 1.3 ...

  7. 零基础学Java第一节(语法格式、数据类型)

    本篇文章是<零基础学Java>专栏的第一篇文章,从本篇文章开始,将会连更本专栏,带领大家将Java基础知识彻底学懂,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! ...

  8. JAVA 入门第一章(语法基础)

    本人初学java 博客分享记录一下自己的学习历程 java我的初步学习分为六章,有c和c++的基础学起来也简便了很多. 第一章 语法基础 第二章 面向对象 第三章 常用工具类 第四章 文件操纵 第五章 ...

  9. #Java学习之路——基础阶段(第三篇)

    我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容. 前言: ...

随机推荐

  1. Linux下安装Redis4.0版本(简便方法)

    Redis介绍: Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis 与其他 key - value 缓存产品有以下三个特点: Redis支持数据的持久 ...

  2. SpringBoot 集成 Elasticsearch

    前面在 ubuntu 完成安装 elasticsearch,现在我们SpringBoot将集成elasticsearch. 1.创建SpringBoot项目 我们这边直接引入NoSql中Spring ...

  3. Spark SQL源码剖析(一)SQL解析框架Catalyst流程概述

    Spark SQL模块,主要就是处理跟SQL解析相关的一些内容,说得更通俗点就是怎么把一个SQL语句解析成Dataframe或者说RDD的任务.以Spark 2.4.3为例,Spark SQL这个大模 ...

  4. Java讲解RPC的基本实现

    RPC远程过程调用可以说是分布式系统的基础,本文将通过Java演示一次普通的rpc调用到底发生了什么. 我曾经在网上看到有人提问,为什么RPC要叫作远程过程调用,而不叫作RMC远程方法调用.个人认为R ...

  5. HTML+CSS教程(二)frameset框架和iframe内嵌

    一.框架 (frameset)1.用<frameset></frameset>代替了<body></body>2.rows设置行的占页面的百分比:col ...

  6. 可以用 Python 编程语言做哪些神奇好玩的事情?除了生孩子不能,其他全都行!

    坦克大战 源自于一个用Python写各种小游戏的github合集,star数1k.除了坦克大战外,还包含滑雪者.皮卡丘GOGO.贪吃蛇.推箱子.拼图等游戏. 图片转铅笔画 帮助你快速生成属于自己的铅笔 ...

  7. 模拟HTTP请求调用controller

    原文参考本人的简书:https://www.jianshu.com/p/0221edbe1598 MockMvc实现了对Http请求的模拟,能够直接使用网络的形式,转换到Controller调用,这样 ...

  8. 解决Oracle在命令行下无法使用del等键问题

    前言: Oracle使用Linux命令行进行编辑? 有PL/SQL development,SQL development等工具,为何用Linux命令行? 但也免不了有用的的时候 以下是解决在Linu ...

  9. Codeforces Round #632 (Div. 2) 题解

    空山新雨后,天气晚来秋. 明月松间照,清泉石上流. 竹喧归浣女,莲动下渔舟. 随意春芳歇,王孙自可留.--王维 A. Little Artem 网址:https://codeforces.com/co ...

  10. POJ2044 天气预报---状态细则

    墙角数枝梅,凌寒独自开. 遥知不是雪,为有暗香来.--王安石 题目:天气预报 网址:http://poj.org/problem?id=2044 你是一个可以控制降雨的神仙. 你是一个仁慈的神,希望土 ...