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. selenium 执行js代码

    获取一个input输入框的值: JavascriptExecutor js =(JavascriptExecutor) driver; merchatName=js.executeScript(&qu ...

  2. java-锁膨胀的过程

    先来看个奇怪的demo public class A { int i=0; // boolean flag =false; public synchronized void parse(){ i++; ...

  3. 树莓派4b 上手三板斧

    树莓派4b 上手三板斧 1.无屏幕和网线连接准备 windows / mac 电脑下载安装Notepad++ 新建文件并保存为ssh(该文件为空文件) 新建文件wpa_supplicant.conf ...

  4. fasttext 和pysparnn的安装

  5. dns的抓包分析

    dns: 域名系统(服务)协议 dns的解析全过程: 1. 浏览器先检查自身缓存中有没有被解析过的这个域名对应的ip地址,如果有,解析结束.同时域名被缓存的时间也可通过TTL属性来设置. 2. 如果浏 ...

  6. How to check if directory exist using C++ and winAPI

    如果看文件夹是否存在,必须看返回值是不是 INVALID_FILE_ATTRIBUTES #include <windows.h> #include <string> bool ...

  7. QtConcurrent::run 运行类的成员函数

    https://stackoverflow.com/questions/2152355/is-it-possible-to-use-qtconcurrentrun-with-a-function-me ...

  8. OpenCV学习(4)——动态结构

    学习一个新知识,无外乎学习它本身和它的工具.OpenCV提供许多内置的结构及处理函数,非常值得学习. 内存存储 在OpenCV中,内存存储器是一个可以用来存储序列.数组和图像的动态增长的数据结构.它由 ...

  9. SpringBoot应用操作Rabbitmq(direct高级操作)

    一.首先声明完成任务架构,通过direct订阅/发布的模式进行生产消费. a.消息生产指定交换器和路由key b.消费者绑定交换器,路由key和队列的关系(集群监控收到的消息不重复) 二.实战演练 1 ...

  10. RANet : 分辨率自适应网络,效果和性能的best trade-off | CVPR 2020

    基于对自适应网络的研究,论文提出了自适应网络RANet(Resolution Adaptive Network)来进行效果与性能上的取舍,该网络包含多个不同输入分辨率和深度的子网,难易样本的推理会自动 ...