Java学习——blog 1

目录

  1. 特性
  2. 程序开发三步骤
  1. 算术运算符
  2. 赋值运算符
  3. 比较运算符
  4. 位运算符
  5. 逻辑运算符
  6. 三元运算符
  7. instanceof 运算符
  1. 顺序结构
  2. 判断语句
  3. 选择语句
  4. 循环语句

  • Java简介

1995年 Sun公司  Java之父——詹姆斯·戈士林(James Gosling)  OAK->JAVA 

      Sun ONE(Open Net Environment) 体系

  •            Java SE 标准版 桌面应用程序的开发
  •            Java EE 企业版 开发企业级分布式的网络程序
  •            Java ME 应用于嵌入式系统开发

特性

面向对象、与平台无关(跨平台性)、安全、稳定、多线程等

“一旦写成处处可用”

面向对象

更符合人的思维模式,更容易解决复杂问题。

与平台无关(跨平台性)

编写的软件可在执行码上兼容,在所有计算机上运行。只需要操作系统上提供运行环境(Java Runtime Environment,JRE),此环境由Java虚拟机(Java Virtual Machine,JVM)、类库以及一些核心文件组成。

Tips:JDK、JRE、JVM区分辨析

JDK=JRE+开发工具

JRE=JVM+类库

JDK>JRE>JVM

安全

删除了指针和内存释放等语法,有效地避免了非法操作内存。

java程序代码要经过:代码校验、指针校验、等很多测试步骤才能运行。

多线程

使应用程序在同一时间并行执行多项任务,相应的同步机制保证不同线程间正确的共享数据,实现更好的交互能力和实时行为。

动态

由于Java程序的基本组成单元是类,类在运行时时动态装载的,Java可以在分布环境中动态调整库中的方法和增加变量,而客户端不需要任何修改。

程序开发三步骤:

编写源程序(java源程序)——>编译源程序(java字节码文件)——>运行(JVM)

  • 基础语法

public class HelloJava{
    public static void main(String args[]){
        
   }
}

Tips:Java语句严格区分大小写

  • 基本数据类型

四类八种基本数据类型:

Tips:Java中的默认类型:整数类型是 int 、浮点类型是 double 。

类型转换:

自动转换:

byte、short、char‐‐>int‐‐>long‐‐>float‐‐>double

强制转换:

转换格式:数据类型 变量名 = (数据类型)被转数据值;

Tips:

  • 浮点转成整数,直接取消小数点,可能造成数据损失精度。
  • int 强制转成 short 砍掉2个字节,可能造成数据丢失。
  • 标识符

标识符:是指在程序中,我们自己定义内容。比如类的名字、方法的名字和变量的名字等等,都是标识符。

命名规则(硬性要求)

  • 标识符可以包含 英文字母26个(区分大小写) 、 0-9数字 、 $(美元符号) 和 _(下划线) 。
  • 标识符不能以数字开头。
  • 标识符不能是关键字。

命名规范 (软性建议)

  • 类名规范:首字母大写,后面每个单词首字母大写(大驼峰式)。
  • 方法名规范: 首字母小写,后面每个单词首字母大写(小驼峰式)。
  • 变量名规范:全部小写。
  • 关键字

  • 常量

常量是指在Java程序中固定不变的数据。

  • 变量

 变量是程序中可以变化的量。

变量定义的格式包括三个要素: 数据类型 变量名 数据值

格式:数据类型 变量名 = 数据值;

Tips:

  • Java中要求一个变量每次只能保存一个数据,必须要明确保存的数据类型。
  • 变量名称:在同一个大括号范围内,变量的名字不可以相同。
  • 变量赋值:定义的变量,不赋值不能使用。

  • 运算符

算术运算符

++ 运算,变量自己增长1。反之, – 运算,变量自己减少1,用法与 ++ 一致。

  • 独立运算: 变量在独立运算时, 前++ 和 后++ 没有区别

变量 前++ :例如 ++i 。

变量 后++ :例如 i++ 。

  • 混合运算: 和其他变量放在一起, 前++ 和 后++ 就产生了不同。

变量 前++ :变量a自己加1,将加1后的结果赋值给b,也就是说a先计算。a和b的结果都是2。

变量 后++ :变量a先把自己的值1,赋值给变量b,此时变量b的值就是1,变量a自己再加1。a的结果是2,b 的结果是1。

+符号在字符串中的操作:

+符号在遇到字符串的时候,表示连接、拼接的含义。

“a”+"b"的结果是“ab”,连接含义

赋值运算符:

比较运算符:

Tips:是两个数据之间进行比较的运算,运算结果都是布尔值 true 或者 false 。

位运算符:

逻辑运算符:

Tips:用来连接两个布尔类型结果的运算符,运算结果都是布尔值 true 或者 false

三元运算符:

格式: 数据类型 变量名 = 布尔类型表达式?结果1:结果2

布尔类型表达式结果是true,三元运算符整体结果为结果1,赋值给变量。

布尔类型表达式结果是false,三元运算符整体结果为结果2,赋值给变量。

instanceof 运算符:

格式:   ( Object reference variable ) instanceof  (class/interface type)

如果运算符左侧变量所指的对象,是操作符右侧类或接口(class/interface)的一个对象,那么结果为真。 

  • 控制语句

顺序结构

public static void main(String[] args){

//顺序执行,根据编写的顺序,从上到下运行

System.out.println(1);

System.out.println(2);

System.out.println(3);

 }

判断语句

-if语句

if(关系表达式){

语句体;

}

执行流程:

-首先判断关系表达式看其结果是true还是false
-如果是true就执行语句体
-如果是false就不执行语句体

-if-else语句

if(关系表达式) {

               语句体1;

}else {

               语句体2;

               }

执行流程:

-首先判断关系表达式看其结果是true还是false
-如果是true就执行语句体1
-如果是false就执行语句体2

-if-else if-else语句

if (判断条件1) { 执行语句1; }

else if (判断条件2) { 执行语句2; }... }

else if (判断条件n) { 执行语句n; }

else { 执行语句n+1; }

执行流程:

-首先判断关系表达式1看其结果是true还是false

-如果是true就执行语句体1

-如果是false就继续判断关系表达式2看其结果是true还是false

-如果是true就执行语句体2

-如果是false就继续判断关系表达式…看其结果是true还是false

-如果没有任何关系表达式为true,就执行语句体n+1。

选择语句

-switch语句

switch(表达式) {

case 常量值1: 语句体1; break;

case 常量值2: 语句体2; break;

 ...

default: 语句体n+1; break;

}

Tips:case后如果不写break,会不进行判断直接向后运行直至遇到break或整体switch结束。

执行流程:

-首先计算出表达式的值
-其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结 束。
-最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。

循环语句

-for语句

for(初始化表达式①; 布尔表达式②; 步进表达式④){

                      循环体③

}

执行顺序:①②③④>②③④>②③④…②不满足为止。
-①负责完成循环变量初始化
-②负责判断是否满足循环条件,不满足则跳出循环
-③具体执行的语句
-④循环后,循环条件所涉及变量的变化情况

-while语句

初始化表达式①

while(布尔表达式②){

循环体③

步进表达式④

}

执行顺序:①②③④>②③④>②③④…②不满足为止。
-①负责完成循环变量初始化。
-②负责判断是否满足循环条件,不满足则跳出循环。
-③具体执行的语句。
-④循环后,循环变量的变化情况

-do-while语句

初始化表达式①

do{

循环体③

步进表达式④

}
while(布尔表达式②);

执行顺序:①③④>②③④>②③④…②不满足为止。
-①负责完成循环变量初始化。
-②负责判断是否满足循环条件,不满足则跳出循环。
-③具体执行的语句
-④循环后,循环变量的变化情况

  • 数组

三种格式:

  • 数组存储的数据类型[] 数组名字 = new 数组存储的数据类型[长度];   

        int[] arr = new int[3];

  • 数据类型[] 数组名 = new 数据类型[]{元素1,元素2,元素3…};

        int[] arr = new int[]{1,2,3,4,5}

  • 数据类型[] 数组名 = {元素1,元素2,元素3…};

        int[] arr = {1,2,3,4,5}

数组定义格式详解:

数组存储的数据类型: 创建的数组容器可以存储什么数据类型。

[ ] : 表示数组。

数组名字:为定义的数组起个变量名,满足标识符规范,可以使用名字操作数组。

new:关键字,创建数组使用的关键字。

数组存储的数据类型: 创建的数组容器可以存储什么数据类型。

[长度]:数组的长度,表示数组容器中可以存储多少个元素。

Tips:数组有定长特性,长度一旦指定,不可更改。

数组的长度属性: 每个数组都具有长度,而且是固定的,Java中赋予了数组的一个属性,可以获取到数组的 长度,语句为: 数组名.length ,属性length的执行结果是数组的长度,int类型结果。由次可以推断出,数组的最大索引值为 数组名.length-1

索引访问数组中的元素:

数组名[索引]=数值,为数组中的元素赋值

变量=数组名[索引],获取出数组中的元素

  • 参考:

《Java 2实用教程 第5版》

https://blog.csdn.net/weixin_43353418/article/details/104124018

https://blog.csdn.net/weixin_43353418/article/details/104122365

Java 运算符 | 菜鸟教程 (runoob.com)

猜你喜欢

转载自blog.csdn.net/K_savo/article/details/122529410
今日推荐