Java:基础语法
基础语法
- 1. 基本结构
- 类和方法
- 2. 变量和数据类型
- 基本数据类型
- 引用数据类型
- 3. 操作符
- 算术操作符
- 比较操作符
- 逻辑操作符
- 4. 控制结构
- 条件语句
- 循环语句
- 5. 数组
- 6. 方法
- 7. 面向对象编程
- 类和对象
- 继承
- 多态
- 8. 异常处理
- 9. 常用类库
1. 基本结构
类和方法
Java程序的基本单位是类,每个类包含一个或多个方法。类是对象的蓝图,定义了对象的属性和行为。方法是执行特定任务的代码块。
public class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}
}
public class HelloWorld: 定义一个公共类HelloWorld。public static void main(String[] args): 定义程序的入口方法main,它是Java程序的执行起点。System.out.println("Hello, World!");: 输出字符串到控制台。
2. 变量和数据类型
基本数据类型
Java有八种基本数据类型,每种类型都有固定的大小和范围。
byte: 8位整数,范围-128到127。short: 16位整数,范围-32,768到32,767。int: 32位整数,范围-231到231-1。long: 64位整数,范围-263到263-1。float: 32位单精度浮点数。double: 64位双精度浮点数。char: 16位Unicode字符。boolean: 布尔类型,只有两个值:true和false。
int age = 25;
double price = 19.99;
char grade = 'A';
boolean isJavaFun = true;
引用数据类型
引用数据类型包括类、接口和数组。
String: 代表字符串。
String name = "Alice";
3. 操作符
算术操作符
用于进行算术运算。
+: 加法。-: 减法。*: 乘法。/: 除法。%: 取模(余数)。
int a = 10;
int b = 5;
int sum = a + b; // 15
int diff = a - b; // 5
int product = a * b; // 50
int quotient = a / b; // 2
int remainder = a % b; // 0
比较操作符
用于比较两个值。
==: 等于。!=: 不等于。>: 大于。<: 小于。>=: 大于等于。<=: 小于等于。
int x = 10;
int y = 20;
boolean isEqual = (x == y); // false
boolean isNotEqual = (x != y); // true
boolean isGreater = (x > y); // false
boolean isLesser = (x < y); // true
boolean isGreaterOrEqual = (x >= y); // false
boolean isLesserOrEqual = (x <= y); // true
逻辑操作符
用于进行逻辑运算。
&&: 逻辑与。||: 逻辑或。!: 逻辑非。
boolean a = true;
boolean b = false;
boolean andResult = (a && b); // false
boolean orResult = (a || b); // true
boolean notResult = !a; // false
4. 控制结构
条件语句
if语句:根据条件执行不同的代码块。
if (age > 18) {System.out.println("Adult");
} else {System.out.println("Not Adult");
}
switch语句:根据变量的值执行不同的代码块。
int day = 2;
switch (day) {case 1:System.out.println("Monday");break;case 2:System.out.println("Tuesday");break;// 其他casedefault:System.out.println("Invalid day");
}
循环语句
for循环:用于固定次数的循环。
for (int i = 0; i < 10; i++) {System.out.println(i);
}
while循环:用于基于条件的循环。
int i = 0;
while (i < 10) {System.out.println(i);i++;
}
do-while循环:类似于while循环,但至少执行一次。
int i = 0;
do {System.out.println(i);i++;
} while (i < 10);
5. 数组
数组是相同数据类型元素的集合。
int[] numbers = {1, 2, 3, 4, 5};
for (int number : numbers) {System.out.println(number);
}
6. 方法
方法是执行特定任务的代码块,可以传入参数并返回结果。
public int add(int a, int b) {return a + b;
}public static void main(String[] args) {HelloWorld hw = new HelloWorld();int sum = hw.add(5, 3);System.out.println(sum); // 输出8
}
7. 面向对象编程
类和对象
类是对象的蓝图,对象是类的实例。
public class Dog {String breed;int age;void bark() {System.out.println("Woof");}
}public class TestDog {public static void main(String[] args) {Dog myDog = new Dog();myDog.breed = "Labrador";myDog.age = 3;myDog.bark();}
}
继承
通过继承,一个类可以继承另一个类的属性和方法。
public class Animal {void eat() {System.out.println("This animal eats food.");}
}public class Dog extends Animal {void bark() {System.out.println("Woof");}
}public class TestInheritance {public static void main(String[] args) {Dog myDog = new Dog();myDog.eat(); // 输出"This animal eats food."myDog.bark(); // 输出"Woof"}
}
多态
多态允许不同类的对象通过相同的接口调用不同的方法实现。
public class Animal {void sound() {System.out.println("Animal makes a sound");}
}public class Dog extends Animal {void sound() {System.out.println("Woof");}
}public class Cat extends Animal {void sound() {System.out.println("Meow");}
}public class TestPolymorphism {public static void main(String[] args) {Animal myDog = new Dog();Animal myCat = new Cat();myDog.sound(); // 输出"Woof"myCat.sound(); // 输出"Meow"}
}
8. 异常处理
Java通过异常处理机制来处理运行时错误,确保程序的健壮性。
try {int division = 10 / 0;
} catch (ArithmeticException e) {System.out.println("Cannot divide by zero");
} finally {System.out.println("This block is always executed");
}
try块:包含可能抛出异常的代码。catch块:捕获并处理异常。finally块:无论是否发生异常,始终执行的代码块。
9. 常用类库
Java标准库提供了许多实用的类和方法,例如java.util包中的ArrayList类:
import java.util.ArrayList;public class TestArrayList {public static void main(String[] args) {ArrayList<String> list = new ArrayList<>();list.add("Apple");list.add("Banana");list.add("Cherry");for (String fruit : list) {System.out.println(fruit);}}
}
import java.util.ArrayList;: 导入ArrayList类。ArrayList<String> list = new ArrayList<>();: 创建ArrayList对象。list.add("Apple");: 向列表添加元素。for (String fruit : list): 使用增强的for循环遍历列表。
相关文章:
Java:基础语法
基础语法 1. 基本结构类和方法 2. 变量和数据类型基本数据类型引用数据类型 3. 操作符算术操作符比较操作符逻辑操作符 4. 控制结构条件语句循环语句 5. 数组6. 方法7. 面向对象编程类和对象继承多态 8. 异常处理9. 常用类库 1. 基本结构 类和方法 Java程序的基本单位是类&am…...
安装bedtools详细步骤和详细介绍bedtools用法
安装bedtools详细步骤和详细介绍bedtools用法 一、安装bedtools详细步骤下载解压安装编译依赖编译设置环境变量激活环境变量执行命令查看版本二、详细介绍bedtools用法使用bedtools示例用法bedtools intersectbedtools bamtobedbedtools window一、安装bedtools详细步骤 下载 …...
21 - grace数据处理 - 补充 - 泄露误差改正 - Slepian局部谱分析法(一) - slepian分析法理论理解
21 - grace数据处理 - 泄露误差改正 - Slepian局部谱分析法 - slepian分析法理论理解 0 引言1 slepian谱分析法1.1 slepian谱分析法AI解释1.2 基于slepian谱分析法的GRACE数据处理应用2 slepian谱分析法关键过程实现2.1 求解正定特征方程2.2 计算slepian基函数2.3 计算Shannon数…...
WLAN国家码与信道顺从表
国家码和信道顺从表及信道功率限制 不同的国家和地区规定了在本国或本地区可以使用的信道、射频信号在信道中的最大发射功率。工作在不同信道的射频信号,信号强度可能会有差别。国家码和信道顺从表、各信道的功率限制值、信道编号和频率对照关系请参见国家码和信道…...
行为型设计模式1:状态/策略/命令
行为型设计模式:状态/策略/命令 (qq.com)...
【知识专栏丨python数分实战】天猫订单数据分析及可视化|taobao天猫订单接口
今天这篇文章将给大家介绍天猫订单数据分析及可视化案例。 import pandas as pdimport numpy as npfrom pyecharts.charts import Pie,Bar,Line,Map,Map3D,Funnelfrom pyecharts import options as optsimport matplotlib.pyplot as pltimport warningsimport seaborn as snsfr…...
[kimi笔记]为什么csc.exe不可以双击运行
csc.exe 是 C# 编译器的可执行文件,它是 .NET Framework 的一部分,用于编译 C# 源代码文件( .cs 文件)生成可执行文件( .exe 文件)或其他类型的程序集。 csc.exe 不能通过双击运行的原因有以下几点&…...
护眼大路灯哪个牌子好?2024学生护眼大路灯推荐
护眼大路灯哪个牌子好?护眼大路灯不仅能够提供日常的光线照明,还模拟了太阳光光线,使在室内用眼学习也能够有着自然光般的舒适感,但现在市场上有许多对产品质量把控不过关、光线效果欠佳、存有安全隐患的劣质护眼大路灯产品&#…...
Vue项目中手搓滑动校验模块-demo
实现代码 SliderCheck.vue <template><div class"drag" ref"dragDiv"><div class"drag_bg" ref"dragBg"></div><div class"drag_text" ref"dragText">{{ confirmWords }}</di…...
Socket如何实现客户端和服务器间的通信
Socket 是实现网络通信的一种机制,它允许在不同主机之间的进程通过网络进行数据交换。下面我将简要介绍如何使用 Socket 实现客户端和服务器间的通信。 客户端-服务器通信步骤: 服务器端: 创建服务器端 Socket: 服务器端通过创…...
基于Spring boot + Vue的校园论坛
作者的B站地址:程序员云翼的个人空间-程序员云翼个人主页-哔哩哔哩视频 csdn地址:程序员云翼-CSDN博客 1.项目技术栈: 前后端分离的项目 后端:Springboot MybatisPlus 前端:Vue ElementUI 数据库: …...
RabbitMQ高级特性 - 生产者消息确认机制
文章目录 生产者消息确认机制概述confirm 代码实现return 代码实现 生产者消息确认机制 概述 为了保证信息 从生产者 发送到 队列,因此引入了生产者的消息确认机制. RabbitMQ 提供了两种解决方案: 通过事务机制实现.通过发送确认机制(confi…...
webpack的loader机制
webpack的loader机制 loader本质上就是导出函数的JavaScript模块。导出的函数,可以用来实现内容的转换。 /* * param{string|Buffer} content 源文件的内容 * param{object} [map] SourceMap数据 * param{any} [meta] meta数据,可以是任何数据 * */ fu…...
(STM32笔记)十一、通过EXTI外部中断实现 按键控制LED
我用的是正点的STM32F103来进行学习,板子和教程是野火的指南者。 之后的这个系列笔记开头未标明的话,用的也是这个板子和教程。 十一、通过EXTI外部中断实现 按键控制LED 十一、通过EXTI外部中断实现 按键控制LED1、按键模块按键原理图按键程序思路 2、中…...
假如家里太大了,wifi连不上了怎么办
最近有个土豪朋友抱怨,他家里太大了,一个路由器的Wi-Fi信号根本无法覆盖他们家的每个房间,都没办法上网看奥运会比赛了。(还好我是穷人,就没有这种烦恼T_T)。 然后我问他为何不用一个路由器作主路由器&…...
elementPlus 设置el-input文本域固定高度和禁止下拉
elementPlus 设置el-input文本域固定高度和禁止下拉 话不多说直接上代码 // resize"none" 禁止下拉<el-inputv-model"textarea"style"width: 240px"type"textarea"resize"none"placeholder"请输入"/>// 设…...
(转)领导人必过的三道关
为什么企业领导人享受优厚的待遇,为什么董事会对企业领导人千挑万选?因为企业生命如此脆弱,据美国《财 富》杂志报道,世界500强企业平均寿命40年,世界1000强企业平均寿命30年,一般跨国公司平均寿命10年。而就是这脆弱…...
速盾:cdn可以定时刷新缓存吗?
CDN(Content Delivery Network)是一种通过在全球各地分布的服务器上缓存和传送网站内容的技术,以提高用户访问速度和降低服务器负载。CDN的缓存机制可以减少用户对源服务器的请求次数,从而提高网站的响应速度和性能。但是…...
代码随想录算法训练营第二十九天| 62.不同路径、63. 不同路径 II
写代码的第二十九天 继续动归!!! 62.不同路径 思路 解决问题1:dp[i][j]的的含义是什么?本题给的是一个二维的表,判断从左上角走到右下角有多少种路径,所以dp应该是二维数组,dp[i]…...
Go+Redis零基础到用户管理系统API实战_20240730 课程笔记
概述 如果您没有Golang的基础,应该学习如下前置课程。 Golang零基础入门Golang面向对象编程Go Web 基础Go语言开发REST API接口_20240728Go语言操作MySQL开发用户管理系统API教程_20240729Redis零基础快速入门_20231227 基础不好的同学每节课的代码最好配合视频进…...
Docker 离线安装指南
参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...
【WiFi帧结构】
文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成:MAC头部frame bodyFCS,其中MAC是固定格式的,frame body是可变长度。 MAC头部有frame control,duration,address1,address2,addre…...
MFC内存泄露
1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...
【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力
引言: 在人工智能快速发展的浪潮中,快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型(LLM)。该模型代表着该领域的重大突破,通过独特方式融合思考与非思考…...
1.3 VSCode安装与环境配置
进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件,然后打开终端,进入下载文件夹,键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...
Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
select、poll、epoll 与 Reactor 模式
在高并发网络编程领域,高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表,以及基于它们实现的 Reactor 模式,为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。 一、I…...
中医有效性探讨
文章目录 西医是如何发展到以生物化学为药理基础的现代医学?传统医学奠基期(远古 - 17 世纪)近代医学转型期(17 世纪 - 19 世纪末)现代医学成熟期(20世纪至今) 中医的源远流长和一脉相承远古至…...
