【Java零基础入门篇】第 ② 期 - Java语言基础(三)

简介: Java零基础入门


博主:命运之光
专栏:JAVA入门
JAVA.gif

学习目标 掌握变量、常量、表达式的概念,数据类型及变量的定义方法;
掌握常用运算符的使用; 掌握程序的顺序结构、选择结构和循环结构的使用;
掌握数组的定义及使用方法;
掌握基本的输入输出方法;


## 运算符
Java中的语句有很多种形式,表达式就是其中一种形式。表达式是由操作数运算符所组成:操作数可以是常量变量也可以是方法,而运算符就是数学中的运算符号,如“+”、“-”、“*”、“/”、“%”等。以下面的表达式(z+100)为例,“z”与“100”都是操作数,而“+”就是运算符。
在这里插入图片描述

赋值运算符

赋值运算符分为两种:

  • 简单赋值运算符 “ = ”

作用是为变量赋值不能为常量或表达式赋值。当赋值运算符两边的数据类型不一致时,使用自动类型转换强制类型转换原则进行处理。

        int  n = 10 ;//声明并赋值
        int  a, b, c;//连续声明
        a = b = c = 10;//多个变量同时赋值,表达式等价于c = 10; b = c; a = b;
        int  x = y = z = 10;//错误,Java不支持此语法
  • 复合赋值运算符 :

请添加图片描述

🍓🍓例: 使用复合赋值运算符。

public class text1 {
    public static void main(String args[]) {
        int num = 10;
        num *= 2;
        System.out.println(num);
    }
}

请添加图片描述
🍓使用复合赋值运算符的好处

  • 语法简洁;🍍🍍🍍
  • 运算时可以自动在底层完成数据类型的转换;🍍🍍🍍

算术运算符

请添加图片描述
🍓🍓例1: 求模(求余)运算。

public class text1 {
    public static void main(String args[]) {
        int numA = 10;
        int numB = 3;
        System.out.println(numA % numB);
    }
}

请添加图片描述

可以利用与2求模来判断奇偶数(偶数模2为0,奇数模2为1)

🍓🍓例2: 加,减,乘,除运算。

public class text1 {
    public static void main(String args[]) {
        int numA = 10;
        int numB = 20;
        System.out.println("加法计算:" + (numA + numB));
        System.out.println("减法计算:" + (numA - numB));
        System.out.println("乘法计算:" + (numA * numB));
        System.out.println("除法计算:" + (numA / (double) numB));
    }
}

请添加图片描述

  • 两个整数相除,结果只保留整数部分;
  • 除数和被除数若有一个非整数,则结果为浮点数

🍓🍓例3: 字符串连接运算‘+’。

需要满足一个前提条件:表达式中至少有一个字符串
public class text1 {
    public static void main( String args[ ] ) {
        int num = 10;
        System.out.println( "除法运算结果为:" + num/3.0);
    }
}

请添加图片描述

3.0默认为double型,所以除法运算最终结果为浮点数

🍓🍓例4:自增运算符(前置) 。

public class text1 {
    public static void main(String args[]) {
        int numA = 10;            // 定义整型变量
        int numB = 20;            // 定义整型变量
        // “++”写在变量前面,表示先对numA的变量内容加1
        // 使用处理后的numA变量的内容 + numB变量的内容
        int result = ++numA + numB;
        System.out.println("numA = " + numA);
        System.out.println("result = " + result);
    }
}

请添加图片描述
🍓🍓例5:自增运算符(后置)。

public class text1 {
    public static void main(String args[]) {
        int numA = 10;             // 定义整型变量
        int numB = 20;             // 定义整型变量
        // “++”写在后面,表示先使用numA的内容进行加法计算
        // 加法计算完成之后在对numA的内容进行自增
        int result = numA++ + numB;
        System.out.println("numA = " + numA);
        System.out.println("result = " + result);
    }
}

请添加图片描述

关系运算符

关系运算符的主要功能是进行数据的大小关系比较,返回的结果是boolean型数据(只有true、false两种取值)。
请添加图片描述

除==和!=运算符 之外其他关系运算符都只支持左右两边的操作数 都是数值类型的情况

🍓🍓例:使用关系运算符。

public class text1 {
    public static void main(String args[]) {
        System.out.println("3 > 1 = " + (3 > 1));    // 使用大于号
        System.out.println("3 < 1 = " + (3 < 1));    // 使用小于号
        System.out.println("3 >= 1 = " + (3 >= 1));    // 使用大于等于号
        System.out.println("3 <= 1 = " + (3 <= 1));    // 使用小于等于号
        System.out.println("3 == 1 = " + (3 == 1));    // 使用等于号
        System.out.println("3 != 1 = " + (3 == 1));    // 使用不等于号
    }
}

请添加图片描述

逻辑运算符

==&—逻辑与 | —逻辑或 !—逻辑非 && —短路与 || —短路或 ^ —逻辑异或==
请添加图片描述

逻辑运算符用于操作 两个布尔型的变量和常量,其结果仍是 布尔类型值

🍓🍓例1:逻辑非(!),普通逻辑与(&)运算。

public class text1 {
    public static void main(String args[]) {
        boolean flag1 = true;        // 定义布尔型变量
        boolean flag2 = (1 == 2) & (10 / 2 == 0); //普通与运算结果赋值给布尔变量
        System.out.println(!flag1);    // 对变量结果进行非操作
        System.out.println(flag2);
    }
}

请添加图片描述
🍓🍓例2:短路与(&&)运算。

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

        boolean flag = (1 == 2) && (10 / 0 == 0); //短路与运算结果赋值给布尔变量

        System.out.println(flag);
    }
}

请添加图片描述
在这里插入图片描述
🍓🍓例3:普通或( | )操作。

public class text1 {
    public static void main(String args[]) {
        boolean flag = (1 == 1) | (10 / 0 == 0); //短路与运算结果赋值给布尔变量
        System.out.println(flag);
    }
}

请添加图片描述
在这里插入图片描述
🍓🍓例4:短路或( || )操作。

public class text1 {
    public static void main(String args[]) {
        boolean flag = (1 == 1) || (10 / 0 == 0); //短路与运算结果赋值给布尔变量
        System.out.println(flag);
    }
}

请添加图片描述
在这里插入图片描述
总结:

  • 逻辑运算符用于连接布尔型表达式,在Java中不可以写成3<x<6,应该写成x>3 & x<6 ;
  • “&”和“&&”的区别:
    1.单&时,左边无论真假,右边都进行运算;
    2.双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。

3.“|”和“||”的区别同理,||表示:当左边为真,右边不参与运算。

条件运算符

条件运算符是三目运算符。执行三目的时候可以以一个布尔表达式的结果进行赋值,基本的语法结构如下:

数据类型 变量 = 布尔表达式 ? 满足此表达式时设置的内容 : 不满足此表达式时设置的内容 ;
public class text1 {
    public static void main(String args[]) {
        int numA = 10;    // 定义int型变量
        int numB = 20;    // 定义int型变量
        // 如果numA大于numB,返回true,则将numA的内容赋值给max
        // 如果numA小于numB,返回false,则将numB的内容赋值给max
        int max = numA > numB ? numA : numB;
        System.out.println(max);
    }
}

请添加图片描述

运算符优先级

请添加图片描述

建议:运算符的优先级不必专门去记,可以适当使用()去改变优先级。
相关文章
|
1月前
|
存储 Oracle Java
java零基础学习者入门课程
本课程为Java零基础入门教程,涵盖环境搭建、变量、运算符、条件循环、数组及面向对象基础,每讲配示例代码与实践建议,助你循序渐进掌握核心知识,轻松迈入Java编程世界。
254 0
|
2月前
|
Java
java入门代码示例
本文介绍Java入门基础,包含Hello World、变量类型、条件判断、循环及方法定义等核心语法示例,帮助初学者快速掌握Java编程基本结构与逻辑。
405 0
|
3月前
|
安全 Java 数据库连接
2025 年最新 Java 学习路线图含实操指南助你高效入门 Java 编程掌握核心技能
2025年最新Java学习路线图,涵盖基础环境搭建、核心特性(如密封类、虚拟线程)、模块化开发、响应式编程、主流框架(Spring Boot 3、Spring Security 6)、数据库操作(JPA + Hibernate 6)及微服务实战,助你掌握企业级开发技能。
572 3
|
1月前
|
Java
Java语言实现字母大小写转换的方法
Java提供了多种灵活的方法来处理字符串中的字母大小写转换。根据具体需求,可以选择适合的方法来实现。在大多数情况下,使用 String类或 Character类的方法已经足够。但是,在需要更复杂的逻辑或处理非常规字符集时,可以通过字符流或手动遍历字符串来实现更精细的控制。
221 18
|
1月前
|
存储 Java 索引
用Java语言实现一个自定义的ArrayList类
自定义MyArrayList类模拟Java ArrayList核心功能,支持泛型、动态扩容(1.5倍)、增删改查及越界检查,底层用Object数组实现,适合学习动态数组原理。
87 4
|
2月前
|
存储 Java Apache
Java语言操作INI配置文件策略
以上步骤展示了基本策略,在实际项目中可能需要根据具体需求进行调整优化。例如,在多线程环境中操作同一份配置时需要考虑线程安全问题;大型项目可能还需考虑性能问题等等。
165 15
|
2月前
|
前端开发 Java 数据库连接
帮助新手快速上手的 JAVA 学习路线最详细版涵盖从入门到进阶的 JAVA 学习路线
本Java学习路线涵盖从基础语法、面向对象、异常处理到高级框架、微服务、JVM调优等内容,适合新手入门到进阶,助力掌握企业级开发技能,快速成为合格Java开发者。
484 3
|
3月前
|
NoSQL Java 关系型数据库
Java 从入门到进阶完整学习路线图规划与实战开发最佳实践指南
本文为Java开发者提供从入门到进阶的完整学习路线图,涵盖基础语法、面向对象、数据结构与算法、并发编程、JVM调优、主流框架(如Spring Boot)、数据库操作(MySQL、Redis)、微服务架构及云原生开发等内容,并结合实战案例与最佳实践,助力高效掌握Java核心技术。
394 1
|
3月前
|
Java 测试技术 API
Java IO流(二):文件操作与NIO入门
本文详解Java NIO与传统IO的区别与优势,涵盖Path、Files类、Channel、Buffer、Selector等核心概念,深入讲解文件操作、目录遍历、NIO实战及性能优化技巧,适合处理大文件与高并发场景,助力高效IO编程与面试准备。
|
3月前
|
Java 编译器 API
Java Lambda表达式与函数式编程入门
Lambda表达式是Java 8引入的重要特性,简化了函数式编程的实现方式。它通过简洁的语法替代传统的匿名内部类,使代码更清晰、易读。本文深入讲解Lambda表达式的基本语法、函数式接口、方法引用等核心概念,并结合集合操作、线程处理、事件回调等实战案例,帮助开发者掌握现代Java编程技巧。同时,还解析了面试中高频出现的相关问题,助你深入理解其原理与应用场景。
下一篇
oss云网关配置