【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 !

  1. 使用Idea创建模块。Java_study 是创建的项目。
    在这里插入图片描述

  2. 创建java文件。
    在这里插入图片描述
    3.创建成功的 java文件。
    在这里插入图片描述
    标记的HelloWorld是类名,类名和文件名必须相同

  3. 编写main函数
    main函数是 Java 程序的入口点。当 Java 应用程序开始运行时,JVM(Java Virtual Machine)会查找名为 main静态方法,并从此处开始执行程序。
    在这里插入图片描述
    String[] args:表示该方法接受一个字符串数组作为参数,通常用于接收命令行参数。

  4. 调用println函数打印出HelloWorld !
    在这里插入图片描述

2. 变量类和数据类型

2.1 什么是变量?什么是数据类型?

变量是用来存储数据的标识符。

变量好比是收纳盒,如果把所有的物品都放进一个收纳盒这就导致很多问题,那么就需要对收纳盒进行分类。

变量进行分类的是数据类型,数据类型定义变量能存储什么类别的数据。

如图:
在这里插入图片描述

2.2 常用的数据类型

整数类型:

数据类型字节数取值范围
byte1-128 到 127
short2-32768 到 32767
int4-231 到 231-1
long8-263 到 263-1

浮点类型:

数据类型说明
float4字节,单精度
double8字节,双精度

字符类型:

数据类型说明
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;}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/473935.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

性能超越Spark 13.3 倍,比某MPP整体快数十秒 | 多项性能指标数倍于主流开源引擎 | 云器科技发布性能测试报告

云器Lakehouse正式发布性能测试报告 &#x1f3c5;离线批处理&#xff1a;在复杂批处理任务中&#xff0c;云器Lakehouse相较Spark表现出13.31倍性能提升。 &#x1f3c5;即席查询&#xff1a;在交互式分析场景下&#xff0c;云器Lakehouse相较Trino表现出9.84倍性能提升。 &am…

【MySQL】RedHat8安装mysql9.1

一、下载安装包 下载地址&#xff1a;MySQL Enterprise Edition Downloads | Oracle MySQL :: MySQL Community Downloads 安装包&#xff1a;mysql-enterprise-9.1.0_el8_x86_64_bundle.tar 官方 安装文档&#xff1a;MySQL Enterprise Edition Installation Guide 二、安装…

使用IDE实现java端远程调试功能

使用IDE实现java端远程调试功能 1. 整体描述2. 前期准备3. 具体操作3.1 修改启动命令3.2 IDE配置3.3 打断点3.4 运行Debug 4. 总结 1. 整体描述 在做项目时&#xff0c;有些时候&#xff0c;需要和第三方进行调式&#xff0c;但是第三方不在一起&#xff0c;需要进行远程调试&…

蜀道山CTF<最高的山最长的河>出题记录

出这道题的最开始感觉就是,因为现在逆向的形式好多,我最开始学习的时候,经常因为很多工具,或者手段完全不知道,就很懵逼,很多师傅都出了各种类型的,我就想着给以前的"自己"出一道正常exe,慢慢调的题,为了不那么简单,我就选择了C(究极混淆,可能比rust好点),让大家无聊…

Quartus+Nios II for eclipse问题合集

由于对于FPGANIOS II 的工作需要&#xff0c;对工作过程中遇到的问题进行记录&#xff0c;持续更新。 1、BSP directory does not exist: . Stop.Nios II使用过程中遇到的一些问题2_error executing nios2-bsp-generate-files --bsp-di-CSDN博客https://blog.csdn.net/qq_39485…

AWTK VSCode 实时预览插件端口冲突的解决办法

AWTK XML UI 预览插件&#xff1a;在 vscode 中实时预览 AWTK XML UI 文件&#xff0c;在 Copilot 的帮助下&#xff0c;可以大幅提高界面的开发效率。 主要特色&#xff1a; 真实的 UI 效果。可以设置主题&#xff0c;方便查看在不同主题下界面的效果。可以设置语言&#xf…

开源项目低代码表单设计器FcDesigner获取表单的层级结构与组件数据

在使用开源项目低代码表单设计器FcDesigner时&#xff0c;获取和理解表单的层级结构非常关键。通过getDescription和getFormDescription方法&#xff0c;您可以清晰掌握表单组件的组织结构和层次关系。这些方法为操控表单的布局和配置提供了强大的支持。 源码地址: Github | G…

如何对AWS进行节省

AWS 云服务器的费用确实可能会让人感到高昂&#xff0c;尤其是在资源使用不当或配置过多的情况下。不过&#xff0c;通过一些策略的合理应用和优化&#xff0c;完全可以降低云服务的使用成本&#xff0c;实现高效节省。以下是九河云总结的几种主要的优化方法&#xff0c;帮助你…

Macmini中普通鼠标与TrackPad联动问题解决

入手了一款Macmini&#xff0c;然后接了一个普通鼠标&#xff0c;然后又买了一个TrackPad。 接下来&#xff0c;问题来了&#xff0c;这两个玩意之间是联动的&#xff0c;出现问题的地方在于鼠标滚轮对于页面内容滚动的方向上。 通常Windows系统中&#xff0c;鼠标滚轮向前&am…

基于Spring Boot+Unipp的博物馆预约小程序(协同过滤算法、二维码识别)【原创】

&#x1f388;系统亮点&#xff1a;协同过滤算法、二维码识别&#xff1b; 一.系统开发工具与环境搭建 1.系统设计开发工具 后端使用Java编程语言的Spring boot框架 项目架构&#xff1a;B/S架构 运行环境&#xff1a;win10/win11、jdk17 前端&#xff1a; 技术&#xff1a;框…

深入理解 JavaScript 中的 Array.find() 方法:原理、性能优势与实用案例详解

目录 深入理解 JavaScript 中的 Array.find() 方法&#xff1a;原理、性能优势与实用案例详解 一、引言&#xff1a;为什么要使用Array.find() 二、Array.find()的使用与技巧 1、基础语法 2、返回值 3、使用技巧 三、Array.find()的优势与实际应用案例 1、利用返回引用…

安全、便捷、效率高,明达边缘计算网关助力制药装备企业远程调机

随着药厂对设备运维需求的增长&#xff0c;制药装备企业需要在提高运维效率的同时&#xff0c;降低人工及差旅成本。制药装备因其数据具有高度的保密性&#xff0c;要求运维工程师提供安全可靠的远程调试方式。本案例介绍了明达技术MBox20系列5口WIFI通用网关在制药装备上的应用…

HBase 开发:使用Java操作HBase

1、实战简介 HBase和Hadoop一样&#xff0c;都是用Java进行开发的&#xff0c;本次实训我们就来学习如何使用Java编写代码来操作HBase数据库。 实验环境&#xff1a; hadoop-2.7 JDK8.0 HBase2.1.1 2、任务 1、第1关&#xff1a;创建表 package step1; import java.io.IOE…

vulhub之log4j

Apache Log4j Server 反序列化命令执行漏洞(CVE-2017-5645) 漏洞简介 Apache Log4j是一个用于Java的日志记录库,其支持启动远程日志服务器。Apache Log4j 2.8.2之前的2.x版本中存在安全漏洞。攻击者可利用该漏洞执行任意代码。 Apache Log4j 在应用程序中添加日志记录最…

【视觉SLAM】2-三维空间刚体运动的数学表示

读书笔记&#xff1a;学习空间变换的三种数学表达形式。 文章目录 1. 旋转矩阵1.1 向量运算1.2 坐标系空间变换1.3 变换矩阵与齐次坐标 2. 旋转向量和欧拉角2.1 旋转向量2.2 欧拉角 3. 四元数 1. 旋转矩阵 1.1 向量运算 对于三维空间中的两个向量 a , b ∈ R 3 a,b \in \R^3 …

Ubuntu22.04基于ROS2-Humble安装moveit2教程(亲测)

一、安装ROS2-Humble 1、参考&#xff1a;Ubuntu22.04安装ROS2-humble-CSDN博客 2、确保安装完成 source /opt/ros/humble/setup.bash 方法一&#xff1a;二进制安装 sudo apt install ros-humble-moveit* 方法二&#xff1a;安装源码编译 一、卸载二进制安装包 sudo a…

一些常见网络安全术语

1、黑帽 为非法目的进行黑客攻击的人&#xff0c;通常是为了经济利益。他们进入安全网络以销毁&#xff0c;赎回&#xff0c;修改或窃取数据&#xff0c;或使网络无法用于授权用户。这个名字来源于这样一个事实&#xff1a;老式的黑白西部电影中的恶棍很容易被电影观众识别&…

ISCTF 2024 web

ISCTF 2024 web 小蓝鲨的冒险 源码&#xff1a; <?php error_reporting(0); highlight_file(__FILE__); $a "isctf2024"; $b $_GET["b"]; parse_str($b); echo "小蓝鲨开始闯关&#xff0c;你能帮助他拿到flag吗?<br>"; if ($a…

AIGC----生成对抗网络(GAN)如何推动AIGC的发展

AIGC: 生成对抗网络(GAN)如何推动AIGC的发展 前言 随着人工智能领域的迅猛发展&#xff0c;AI生成内容&#xff08;AIGC&#xff0c;AI Generated Content&#xff09;正成为创意产业和技术领域的重要组成部分。在AIGC的核心技术中&#xff0c;生成对抗网络&#xff08;GAN&am…

删除k8s 或者docker运行失败的脚本

vi delete_exited_containers.sh#!/bin/bash# 列出所有停止的容器并存储到数组 list_exited_containers() {echo -e "\nStopped containers:"containers()# 获取停止的容器信息并存入数组while IFS read -r line; docontainers("$line")done < <(do…