当前位置: 首页 > news >正文

Java基础 — 运算符与输入器

介绍

     Java基础运算符分为算术、关系、逻辑、赋值四大类。算术运算符(+、-、*、/、%)处理数学运算,自增(++)自减(--)可快捷修改变量。关系运算符(==、!=、>、<)用于比较,返回布尔值。逻辑运算符(&&、||、!)组合条件判断,支持短路运算。赋值运算符(=、+=、-=)兼具计算与赋值功能。

     输入处理常用Scanner类:需先导入java.util.Scanner,创建实例Scanner sc = new Scanner(System.in)。通过`nextInt()`读取整数,nextDouble()读取浮点数,nextLine()获取整行字符串。注意混合输入时需用nextLine()清空换行符,避免数据错位。Scanner使用后需调用close()释放资源。掌握运算符与输入操作是Java编程的基础能力。


Java基础运算符

Java基础运算符包括算术(+、-、*、/、%)、赋值(=、+=)、比较(==、>、<、!=)、逻辑(&&、||、!),以及三元运算符(?:),用于数值计算、条件判断和逻辑处理。

算术运算符

  • + 加法

  • - 减法

  • * 乘法

  • / 除法(取商)

  • % 取模(取余数)

  • ++ 自增(前缀 ++a 先增后赋值,后缀 a++ 先赋值后增)

  • -- 自减(前缀 --a 先减后赋值,后缀 a-- 先赋值后减)

int a = 10;
int b = a++ + 5; // b = 15, a = 11

赋值运算符

  • = 赋值

  • 复合赋值:+=, -=, *=, /=, %=

int x = 5;
x += 3; // x = 8

比较运算符

  • == 等于

  • != 不等于

  • >, >, >=, >=

boolean result = (10 > 5); // true

逻辑运算符

  • && 逻辑与(短路特性)

  • || 逻辑或(短路特性)

  • ! 逻辑非

if (a > 0 && b < 10) { /* 仅当a>0为true时才检查b<10 */ }

 三元运算符

  • 语法:条件 ? 表达式1 : 表达式2

int max = (a > b) ? a : b;

输入器:Scanner类

Java的Scanner类(java.util包)用于读取控制台或文件输入,支持nextInt()、nextLine()等方法获取不同类型数据,使用后需close()关闭资源,适用于基础交互式输入场景。

import java.util.Scanner;public class Main {public static void main(String[] args) {// 创建Scanner对象Scanner scanner = new Scanner(System.in);// 读取输入System.out.print("请输入一个整数:");int num = scanner.nextInt();System.out.print("请输入一个字符串:");String str = scanner.nextLine();// 关闭Scanner(可选,但推荐)scanner.close();}
}

常用方法

  • nextInt():读取整数

  • nextDouble():读取浮点数

  • next():读取单个单词(以空格分隔)

  • nextLine():读取整行(包括空格)

  • hasNextInt():检查是否有整数输入(避免异常)

注意事项

  • 换行符问题:nextInt() 后调用 nextLine() 会读取残留的换行符,需额外处理: 
int num = scanner.nextInt();
scanner.nextLine(); // 清除缓冲区
String str = scanner.nextLine();
  • 输入类型匹配:输入类型不匹配会抛出 InputMismatchException,可用 hasNextInt()校验:
if (scanner.hasNextInt()) {int num = scanner.nextInt();
}

综合示例

import java.util.Scanner;public class Calculator {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.print("输入第一个数:");double num1 = scanner.nextDouble();System.out.print("输入第二个数:");double num2 = scanner.nextDouble();System.out.print("选择运算符 (+、-、*、/): ");String op = scanner.next();double result;switch (op) {case "+": result = num1 + num2; break;case "-": result = num1 - num2; break;case "*": result = num1 * num2; break;case "/": result = num1 / num2; break;default:  result = 0;}System.out.println("结果:" + result);scanner.close();}
}

总结

     Java基础运算符与输入器是编程中处理数据交互的核心工具。运算符分为算术、关系、逻辑、赋值及位运算五类。算术运算符(+、-、*、/、%)处理数值计算,自增(++)和自减(--)可快捷修改变量值。关系运算符(>、<、==等)用于比较操作,返回布尔结果。逻辑运算符(&&、||、!)实现条件组合,其中短路特性可优化执行效率。赋值运算符(=)结合算术符形成复合表达式(如+=),简化代码书写。位运算符(&、|、<<等)直接操作二进制数据,适用于底层开发。运算符优先级需通过括号明确控制运算顺序。

     输入功能通过Scanner类实现,需导入java.util包。创建Scanner对象后,通过nextInt()、nextDouble()等方法读取不同类型输入,nextLine()可获取整行字符串。需注意数值输入后残留的换行符可能影响后续输入,可通过额外调用nextLine()清空缓冲区。异常处理需结合hasNext系列方法验证输入合法性。使用完毕后应调用close()释放资源。运算符与输入器的正确组合能构建灵活的数据处理逻辑,为程序交互奠定基础。

相关文章:

  • css3新特性第七章(3D变换)
  • OpenBMC:BmcWeb login认证
  • vscode插件系列-2、认识vscode
  • Golang 闭包学习
  • 数论知识啊
  • 电子处方模块开发避坑指南:从互联网医院系统源码实践出发
  • 办公人导航网站
  • JavaWeb:HtmlCss
  • Python爬虫(3)HTML核心技巧:从零掌握class与id选择器,精准定位网页元素
  • STM32F407 HAL库使用 DMA_Normal 模式实现 UART 循环发送(无需中断)
  • 【axios取消请求】如何在token过期后取消未响应的请求
  • CSS学习笔记8——表格
  • kubernetes》》k8s》》Heml
  • 开源模型应用落地-语音合成-MegaTTS3-零样本克隆与多语言生成的突破
  • 从 Java 到 Kotlin:在现有项目中迁移的最佳实践!
  • SpringMVC知识体系
  • Java语言的进化:JDK的未来版本
  • Convenience Variable in GDB
  • 缓存穿透、雪崩、击穿深度解析与解决方案
  • 驱动开发硬核特训 · Day 19:从字符设备出发,掌握 Linux 驱动的实战路径(含 gpio-leds 控制示例)
  • 谷歌一季度利润增超四成:云业务利润率上升,宏观环境可能影响广告业务
  • 建设高标准农田主要目标是什么?有哪些安排?两部门有关负责人答问
  • 解放军报社论:谱写新时代双拥工作崭新篇章
  • 宁德时代校友红利!副董事长给母校复旦豪捐10亿,曾毓群给交大捐近14亿
  • 马上评丨超常设置战略急需专业,意味着什么
  • 网培机构围猎中老年人:低价引流卖高价课、“名师”无资质,舆论呼吁加强监管