【Java 学习】数据类型、变量、运算符、条件控制语句
Java基础语法
- 1. 打印 Hello World !
- 2. 变量类和数据类型
- 2.1 什么是变量?什么是数据类型?
- 2.2 常用的数据类型
- 2.3 使用变量
- 2.4 String 类数据类型
- 2.4.1 String 类基本概念
- 2.4.2 String 类的使用
- 3. 运算符
- 3.1 算数运算符
- 3.2 关系运算符
- 3.3 逻辑运算符
- 3.4 赋值运算符
- 4. 条件控制语句
- 4.1 if--else
- 4.2 for
- 4.3 while--break--continue
- 4.5 switch--case
1. 打印 Hello World !
-
使用
Idea
创建模块。Java_study 是创建的项目。
-
创建
java
文件。
3.创建成功的java
文件。
标记的HelloWorld
是类名,类名和文件名必须相同 -
编写
main
函数
main
函数是 Java 程序的入口点。当 Java 应用程序开始运行时,JVM(Java Virtual Machine)会查找名为main
的静态方法,并从此处开始执行程序。
String[] args:表示该方法接受一个字符串数组作为参数,通常用于接收命令行参数。 -
调用
println
函数打印出HelloWorld !
2. 变量类和数据类型
2.1 什么是变量?什么是数据类型?
变量是用来存储数据的标识符。
变量好比是收纳盒,如果把所有的物品都放进一个收纳盒这就导致很多问题,那么就需要对收纳盒进行分类。
对变量进行分类的是数据类型,数据类型定义变量能存储什么类别的数据。
如图:
2.2 常用的数据类型
整数类型:
数据类型 | 字节数 | 取值范围 |
---|---|---|
byte | 1 | -128 到 127 |
short | 2 | -32768 到 32767 |
int | 4 | -231 到 231-1 |
long | 8 | -263 到 263-1 |
浮点类型:
数据类型 | 说明 |
---|---|
float | 4字节,单精度 |
double | 8字节,双精度 |
字符类型:
数据类型 | 说明 |
---|---|
char | 占用2个字节,表示一个Unicode字符 |
布尔类型:
数据类型 | 说明 |
---|---|
boolean | 表示真(true)或假(false) |
2.3 使用变量
变量的命名规则:
- 标识符:变量名必须是合法的 Java 标识符,不能是 Java 关键字或保留字。
- 字母数字组合:变量名可以由字母、数字、下划线 _ 和美元符号 $ 组成,但不能以数字开头。
- 大小写敏感:Java 是大小写敏感的,age 和 Age 是两个不同的变量。
- 有意义的名称:变量名应具有描述性,能够清楚地表达其用途。
创建变量:
//定义一个整型变量
int n = 1;// 定义一个浮点数,浮点数要加上f
float f = 1.1f;//定义一个doublef浮点数
double d = 6.6;//定义一个字符,字符要用单引号''括起来
char c = 'a';
打印变量:
//打印变量 println打印后换行,print打印后不换行
System.out.println("int整数:" + n);
System.out.println("float单精准度浮点数:" + f);
System.out.println("double双精准度浮点数:" + d );
System.out.print("char字符:" + c);
2.4 String 类数据类型
2.4.1 String 类基本概念
String 类是一个非常重要的类,用于表示文本字符串。
基本概念:
- 不可变性:String 对象是不可变的,这意味着一旦创建了一个 String 对象,其内容就不能被修改。每次对 String 进行修改操作时,都会创建一个新的 String 对象。
- 存储方式:String 对象在内存中的存储方式是通过一个字符数组实现的,通常是一个 char[] 数组。
2.4.2 String 类的使用
//创建字符串对象String str1 = "Hello";String str2 = "World";//字符串拼接
String str3 = str1 + str2;//字符串比较
boolean b = str1.equals(str2);//字符串长度int len = str1.length();//字符串转大写
String str4 = str1.toUpperCase();//字符串转小写
String str5 = str1.toLowerCase();//字符串截取,返回的是从1到3的字符串
String str6 = str1.substring(1,3);//查找字符串,返回的是第一个l的位置
int index = str1.indexOf("llo");// 获取字符串中指定位置的字符
char ch = str1.charAt(1);//字符串替换
String str7 = str1.replace("H","h");//字符串分割
String[] str8 = str1.split("l");//字符串格式化
String str9 = String.format("我的名字叫%s,今年%d岁。", "小明", 18);
3. 运算符
3.1 算数运算符
算数运算符:
运算符 | 描述 |
---|---|
+ | 加法 |
- | 减法 |
* | 乘法 |
/ | 除法 |
% | 取模(求余数) |
示例:
int a = 10;
int b = 3;int sum = a + b; // 13
int difference = a - b; // 7
int product = a * b; // 30
int quotient = a / b; // 3
int remainder = a % b; // 1
3.2 关系运算符
关系运算符:
运算符 | 描述 |
---|---|
== | 等于 |
!= | 不等于 |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
示例:
int x = 5;
int y = 10;boolean isEqual = (x == y); // false
boolean isNotEqual = (x != y); // true
boolean isGreater = (x > y); // false
boolean isLess = (x < y); // true
3.3 逻辑运算符
逻辑运算符:
运算符 | 描述 |
---|---|
&& | 逻辑与 |
|| | 逻辑或 |
! | 逻辑非 |
示例:
boolean condition1 = true;
boolean condition2 = false;// && 两个都为真结果才能为真
boolean result1 = (condition1 && condition2); // false// || 其中有一个为真结果就为真
boolean result2 = (condition1 || condition2); // true// !, !真 -->假, !假 -->真
boolean result3 = !condition1; // false
3.4 赋值运算符
赋值运算符:
运算符 | 描述 |
---|---|
= | 简单赋值 |
+= | 加法赋值 |
-= | 减法赋值 |
*= | 乘法赋值 |
/= | 除法赋值 |
%= | 取模赋值 |
示例:
int num = 10;num += 5; // num = num + 5; num = 15
num -= 3; // num = num - 3; num = 12
num *= 2; // num = num * 2; num = 24
num /= 4; // num = num / 4; num = 6
num %= 2; // num = num % 2; num = 0
4. 条件控制语句
4.1 if–else
//成绩
int n = 99;// 如果小于60 判断为不及格
if(n < 60){System.out.println("不及格");
}else if(n < 70){ //否则,如果小于70,判断为CSystem.out.println("D");
}else if(n < 80){System.out.println("C");
}else if(n < 90){System.out.println("B");
}else{ //否则,判断为ASystem.out.println("A");
}
4.2 for
for(int i=0; i < 6 ; i++ ){System.out.println(i);
}
4.3 while–break–continue
while(n < 10){if(n ==6){System.out.println("终止程序");break;}if(n == 3){System.out.println("省略");n += 1;continue;}System.out.println(n);n++;
}
4.5 switch–case
int day = 3; // 你可以更改这个值来测试不同的情况switch (day) {case 1:System.out.println("Monday");break;case 2:System.out.println("Tuesday");break;case 3:System.out.println("Wednesday");break;case 4:System.out.println("Thursday");break;case 5:System.out.println("Friday");break;case 6:System.out.println("Saturday");break;case 7:System.out.println("Sunday");break;default:System.out.println("Invalid day");break;}
相关文章:

【Java 学习】数据类型、变量、运算符、条件控制语句
Java基础语法 1. 打印 Hello World !2. 变量类和数据类型2.1 什么是变量?什么是数据类型?2.2 常用的数据类型2.3 使用变量2.4 String 类数据类型2.4.1 String 类基本概念2.4.2 String 类的使用 3. 运算符3.1 算数运算符3.2 关系运算符3.3 逻辑运算符3.4 …...
【软考】系统架构设计师-数据库设计基础
数据库核心考点 三级模式-两级映射 外模式--视图 概念模式--表(模式、基本表) 内模式--物理文件 数据库设计 概念结构设计:属性冲突、命名冲突、结构冲突 逻辑结构设计:关系模式(层次模型、网络模型)…...
【Jmeter相关】
Jmeter 可以作为接口测试问题,也会涉及到性能相关的问题 一、JMeter中用户定义的变量(User Defined Variables)和用户参 数(User Parameters)的区别是什么? 在JMeter中都是用于定义和存储测试数据的方法,但它们有一…...
拍立淘按图搜索API接口系列,返回示例图参考
拍立淘按图搜索API接口允许用户通过上传图片来搜索相似的商品,该接口返回的通常是一个JSON格式的响应,其中包含了与上传图片相似的商品信息。以下是一个基于淘宝平台的拍立淘按图搜索API接口返回数据的JSON格式示例,同时提供对其关键字段的解…...

OSG开发笔记(三十二):深入理解相机视口、制作支持与主视图同步变换旋转的相机HUD
若该文为原创文章,未经允许不得转载 本文章博客地址:https://blog.csdn.net/qq21497936/article/details/143852695 各位读者,知识无穷而人力有穷,要么改需求,要么找专业人士,要么自己研究 长沙红胖子Qt…...

2024RISC-V中国峰会 演讲幻灯片和视频回放均已公开
目录 一、幻灯片地址: 二、演讲视频: 一、幻灯片地址: RVSC2024/slides at main cnrv/RVSC2024 GitHub 二、演讲视频: RISC-V国际基金会的个人空间-RISC-V国际基金会个人主页-哔哩哔哩视频...

河道无人机雷达测流监测系统由哪几部分组成?
在现代水利管理中,河道无人机雷达监测系统正逐渐成为一种重要的工具,为河道的安全和管理提供了强大的技术支持。那么,这个先进的监测系统究竟由哪几部分组成呢? 河道无人机雷达监测系统工作原理 雷达传感器通过发射电磁波或激光束…...

28.<Spring博客系统⑤(部署的整个过程(CentOS))>
引入依赖 Spring-boot-maven-plugin 用maven进行打包的时候必须用到这个插件。看看自己pom.xml中有没有这个插件 并且看看配置正确不正常。 注:我们这个项目打的jar包在30MB左右。 <plugin><groupId>org.springframework.boot</groupId><artif…...

OpenAI震撼发布:桌面版ChatGPT,Windows macOS双平台AI编程体验!
【雪球导读】 「OpenAI推出ChatGPT桌面端」 OpenAI重磅推出ChatGPT桌面端,全面支持Windows和macOS系统!这款新工具为用户在日常生活和工作中提供了前所未有的无缝交互体验。对于那些依赖桌面端进行开发工作的专业人士来说,这一更新带来了令人…...
香港站群服务器有助于提升网站在搜索引擎中的排名
拥有253个IP的服务器通常被称为多IP站群服务器。这种服务器架构主要用于集中管理多个网站,允许网站管理员通过一个后台管理系统来高效管理和更新这些网站。 一、主要特点 集中管理:多IP站群服务器通过统一的后台管理系统,可以实现对多个网站…...

YOLOX:使用自己数据集训练模型及改进--1.YOLOX环境搭建及运行
YOLOX环境搭建及运行 YOLO X网络架构是继YOLO v5后,由旷视科技于2021年提出的新一代anthor-free模型,研究者将网络分为输入端、Backbone、PAFPN及Predication,并在Predication提出Decoupled Head、Anchor-free和Multi positives(后文会详细介绍)。 本篇文章介绍如何通过官…...

PyTorch使用教程-深度学习框架
PyTorch使用教程-深度学习框架 1. PyTorch简介 1.1-什么是PyTorch PyTorch是一个广泛使用的开源机器学习框架,特别适合深度学习的应用。它以其动态计算图而闻名,允许在运行时修改模型,使得实验和调试更加灵活。PyTorch提供了强大的GPU加…...

TON商城与Telegram App:生态融合与去中心化未来的精彩碰撞
随着区块链技术的快速发展,去中心化应用(DApp)逐渐成为了数字生态的重要组成部分。而Telegram作为全球领先的即时通讯应用,不仅仅满足于传统的社交功能,更在区块链领域大胆探索,推出了基于其去中心化网络的…...

“乐鑫组件注册表”简介
当启动一个新的开发项目时,开发者们通常会利用库和驱动程序等现有的代码资源。这种做法不仅节省时间,还简化了项目的维护工作。本文将深入探讨乐鑫组件注册表的概念及其核心理念,旨在指导您高效地使用和贡献组件。 概念解析 ESP-IDF 的架构…...

凹凸/高度贴图、法线贴图、视差贴图、置换贴图异同
参考: 凹凸贴图、法线贴图、置换贴图-CSDN博客 视差贴图 - LearnOpenGL CN 1,Learn about Parallax(视差贴图) - 知乎 “视差贴图”的工作流程及原理(OpenGL) - 哔哩哔哩 法线与置换贴图原理讲解以及烘焙制作! - 知乎 1. Bump Mapping 凹凸贴图 BumpMap…...

ZSTD 内存泄漏问题
优质博文:IT-BLOG-CN Zstandard(简称zstd)是一种无损压缩算法,由Facebook开发并开源。它旨在提供高压缩比和高解压速度的平衡,适用于多种数据压缩需求。 特点 【1】高压缩比: zstd能够在保持较高压缩比的…...
c# npoi操作excel
今天在弄使用npoi对excel表的操作,遇到个问题就是使用workbook通过filestream打开后,让后workbook.write(filestream)居然报文件流关闭了,无法写入,弄了好久都不行,最后通过写2个excel文件来解决,现在看来我…...
十二:HTTP错误响应码:理解与应对
在现代网络技术中,HTTP(超文本传输协议)是浏览器与服务器之间沟通的基础。每当我们访问网站或发送请求,HTTP会返回一个响应码,这些代码不仅可以表示成功,还可以指示各种问题。本文将以HTTP错误响应码为主题,探讨其含义、常见类型及应对措施。 1. 400 Bad Request - 请求…...
Rust学习(六):函数式编程
Rust学习(六):函数式编程 我们在前一篇博客中已经介绍了如何通过trait和impl实现Rust的面向对象编程,但是Rust本身实际上并不提倡通过类来解决问题。Rust推崇的是函数式编程,强调将函数作为参数值或者其他函数的返回值…...

使用 Vue 和 Create-Vue 构建工程化前端项目
目录 前言1. 工程化的意义与 Vue 的生态支持2. 搭建 Vue 工程化项目2.1 环境准备2.2 使用 create-vue 创建项目2.2.1 初始化项目2.2.2 安装依赖2.2.3 本地运行 3. Vue 项目的目录结构解析4. Vue 开发流程详解4.1 项目入口与根组件4.1.1 main.js 的作用4.1.2 App.vue 的结构 4.2…...

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析
1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具,该工具基于TUN接口实现其功能,利用反向TCP/TLS连接建立一条隐蔽的通信信道,支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式,适应复杂网…...

测试微信模版消息推送
进入“开发接口管理”--“公众平台测试账号”,无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息: 关注测试号:扫二维码关注测试号。 发送模版消息: import requests da…...

业务系统对接大模型的基础方案:架构设计与关键步骤
业务系统对接大模型:架构设计与关键步骤 在当今数字化转型的浪潮中,大语言模型(LLM)已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中,不仅可以优化用户体验,还能为业务决策提供…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序
一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...
【生成模型】视频生成论文调研
工作清单 上游应用方向:控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...
Mysql8 忘记密码重置,以及问题解决
1.使用免密登录 找到配置MySQL文件,我的文件路径是/etc/mysql/my.cnf,有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...

在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)
考察一般的三次多项式,以r为参数: p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]; 此多项式的根为: 尽管看起来这个多项式是特殊的,其实一般的三次多项式都是可以通过线性变换化为这个形式…...
解决:Android studio 编译后报错\app\src\main\cpp\CMakeLists.txt‘ to exist
现象: android studio报错: [CXX1409] D:\GitLab\xxxxx\app.cxx\Debug\3f3w4y1i\arm64-v8a\android_gradle_build.json : expected buildFiles file ‘D:\GitLab\xxxxx\app\src\main\cpp\CMakeLists.txt’ to exist 解决: 不要动CMakeLists.…...