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

Java语言程序设计——篇二(1)

Java语言基础

  • 数据类型
  • 关键字与标识符
        • 关键字
        • 标识符
  • 常量与变量
      • 1、常量
      • 2、变量
  • 类型转换
      • 自动类型转换
      • 强制类型转换

数据类型

  • 数据的基本要素
  • 数据的性质(数据结构)
  • 数据的取值范围(字节大小)
  • 数据的存储方式
  • 参与的运算
    Java是一门强类型的编程语言,它对变量的数据类型有严格的限定。在定义变量时必须声明变量的类型,在为变量赋值时必须赋予和变量同一种类型的值,否则程序会报错。
    Java语言的类型分为两类,基本数据类型(primitive types)和引用数据类型(reference types)。
    Java数据类型的分类如图所示。
    在这里插入图片描述
    Java是一种严格的类型语言,不允许在数值型和布尔型之间转换,1不能表示true,0也不能表示false。

关键字与标识符

关键字(key word)也称为保留字(Reserved word)。Java语言中的关键字是已经被赋予特定意义的单词符号。
注:
  1.所有的关键字都是小写
  2.所有的关键字不是标识符,不能作为类名方法名变量名等来使用。

关键字

数据类型:boolean、byte、short、int、long、double、char、float、double。
包引入和包声明:import、package。
用于类和接口的声明:class、extends、implements、interface。
流程控制:if、else、switch、do、while、case、break、continue、return、default、while、for。
异常处理:try、catch、finally、throw、throws。
修饰符:abstract、final、native、private、protected、public、static、synchronized、transient、volatile。
其他:new、instanceof、this、super、void、assert、const、enum、goto、strictfp。

标识符

用来表示变量名、类名、方法名、数组名和文件名的有效字符序列 。
标识符语法规则:

  1. 可以由字母、数字、下划线(_)、美元符号($)组合而成。
  2. 必须以字母、下划线或美元符号开头,不能以数字开头。
  3. 关键字不能当标识符使用。
  4. 区分大小写,大小写敏感。
  5. 标识符可以为任意长度。
    例如:
    count,value_add,$2, showMessageDialog,area, radius是合法的标识符;
    2A, d+4,high#,null是非法的标识符
    标识符命名规范: 见名知意,类名首字母大写,变量、方法及对象首字母小写,中间单词首字母大写。驼峰式命名法

常量与变量

1、常量

常量(constant)是指在程序运行过程中其值不可以进行改变的数据。常量有整型常量、浮点型常量、布尔常量、字符常量、字符串常量及符号常量。
按照Java规范,符号常量一般用大写字母,单词之间用下划线分隔。
语法
final datatype CONSTANT_NAME = value;
例如:
final double PI = 3.14159;
使用常量的好处
1、避免重复输入
2、便于程序修改
3、便于程序阅读
字符型常量
用单引号括起来,分为普通字符常量和转义字符常量如:‘a’,‘9’\n。

2、变量

变量(constant) 变量是在程序执行过程中其值可以改变的数据,并且编译时已经确定类型,其类型可以是基本类型或引用类型。在程序中,每个变量在被使用之前必须先声明后使用。
Java 语言程序中可以随时定义变量,不必集中在执行语句之前。

  • 计算机程序是通过变量来操作内存中的数据,变量声明或定义的过程就是在变量和内存单元之间建立联系。
  • 声明变量语法(驼峰法)
      datatype variableName;
    或者
      datatype v1, v2, … , v3;
    例如:
      int x;
      double radius, area;
  • Java语言的变量除了有类型之外,还有修饰词来限定它的使用。修饰词包括public、protected、private、static。
  • 变量声明的一般形式如下:
    <修饰词列表> <变量类型> <变量名列表>;
    如: static int b=1;
    其中变量名必须是合法标识符,变量声明时可以初始化,同一类型一次声明多个变量时用逗号隔开。
    方法中的变量在使用前必须赋值。
    int x, y;
    y = x + 1; //error

类型转换

  • 数值型数据不同类型的转换

自动类型转换

①转换前的数据类型与转换后的类型兼容。
②转换后的数据类型的表示范围比转换前的类型大。
注意: 不同类型的数据进行运算时,需先转换为同一类型,然后进行运算。转换从“短”到“长”的优先关系为:byte→short→char→int→long→float→double→String ,转换只限该语句本身,并不会影响原先变量,布尔类型数据无法进行类型转化。
byte i = 100;
long k = i * 3 + 4;
double d = i * 3.1 + k / 2;

强制类型转换

如果要将较长的数据转换成较短的数据时(不安全),就要进行强制类型转换。强制类型转换的格式如下:
语法
(datatype)variableName
例如:
float f = (float)10.1; // 10.1
int i = (int)f; // 10
int j = (int)-f; // -10
字符串型数据与整型数据相互转换
字符串转换成数值型数据
String MyNumber = “1234.56”;float MyFloat = Float.parseFloat(MyNumber);
数值型数据转换成字符串
在Java语言中,字符串可用加号“+”来实现连接操
作。所以若其中某个操作数不是字符串,该操作在连接之前会自动将其转换成字符串。所以可用加号来实现自动的转换。
int MyInt=1234; //定义整形变量MyInt
String MyString=“”+MyInt;//将整型数据转换成了字符串 <.font>

博主用心写,读者点关注;互动传真情,知识不迷路

相关文章:

Java语言程序设计——篇二(1)

Java语言基础 数据类型关键字与标识符关键字标识符 常量与变量1、常量2、变量 类型转换自动类型转换强制类型转换 数据类型 数据的基本要素数据的性质&#xff08;数据结构&#xff09;数据的取值范围&#xff08;字节大小&#xff09;数据的存储方式参与的运算 Java是一门强类…...

水果商城系统 SpringBoot+Vue

1、技术栈 技术栈&#xff1a;SpringBootVueMybatis等使用环境&#xff1a;Windows10 谷歌浏览器开发环境&#xff1a;jdk1.8 Maven mysql Idea 数据库仅供学习参考 【已经答辩过的毕业设计】 项目源码地址 2、功能划分 3、效果演示...

半导体制造企业 文件共享存储应用

用户背景&#xff1a;半导体设备&#xff08;上海&#xff09;股份有限公司是一家以中国为基地、面向全球的微观加工高端设备公司&#xff0c;为集成电路和泛半导体行业提供具竞争力的高端设备和高质量的服务。 挑战&#xff1a;芯片的行业在国内迅猛发展&#xff0c;用户在上海…...

深入分析 Android BroadcastReceiver (九)

文章目录 深入分析 Android BroadcastReceiver (九)1. Android 广播机制的扩展应用与高级优化1.1 广播机制的扩展应用1.1.1 示例&#xff1a;有序广播1.1.2 示例&#xff1a;粘性广播1.1.3 示例&#xff1a;局部广播 1.2 广播机制的高级优化1.2.1 示例&#xff1a;使用 Pending…...

从数据到洞察:DataOps加速AI模型开发的秘密实践大公开!

作者 | 代立冬&#xff0c;白鲸开源科技联合创始人&CTO 引言 在AI驱动的商业世界中&#xff0c;DataOps作为连接数据与洞察的桥梁&#xff0c;正迅速成为企业数据战略的核心。 在WOT全球技术创新大会2024北京站&#xff0c;白鲸开源联合创始人&CTO 代立冬 在「大数据…...

全景图三维3D模型VR全景上传展示H5开发

全景图三维3D模型VR全景上传展示H5开发 3D互动体验平台的核心功能概览 兼容广泛格式&#xff1a;支持OBJ、FBX、GLTF等主流及前沿3D模型格式的无缝上传与展示&#xff0c;确保创意无界。 动态交互探索&#xff1a;用户可自由旋转、缩放、平移模型&#xff0c;深度挖掘每一处…...

前端面试题29(js闭包和主要用途)

JavaScript 中的闭包是一个非常强大的特性&#xff0c;它允许一个函数访问并操作其词法作用域之外的变量。闭包的形成主要依赖于函数的作用域链&#xff0c;即函数可以访问在其外部定义的变量&#xff0c;即使外部函数已经执行完毕。下面我会通过几个方面来帮助你理解闭包的概念…...

使用Keil 点亮LED灯 F103ZET6

1.新建项目 不截图了 2.startup_stm32f10x_hd.s Keil\Packs\Keil\STM32F1xx_DFP\2.2.0\Device\Source\ARM 搜索startup_stm32f10x_hd.s 复制到项目路径&#xff0c;双击Source Group 1 3.项目文件夹新建stm32f10x.h&#xff0c; 新建文件main.c #include "stm32f10x…...

流批一体计算引擎-12-[Flink]旁路输出getSideOutput(OutputTag)实现拆分流和复制流

官网旁路输出 Flink拆分流和复制流 我们在处理数据的时候,有时候想对不同情况的数据进行不同的处理,那么就需要把流进行拆分或者复制。 如果是使用filter来进行拆分,也能满足我们的需求,但每次筛选都要保留整个流,然后遍历整个流,显然很浪费性能,假如能够在一个流了多次…...

【Scrapy】 Scrapy 爬虫框架

准我快乐地重饰演某段美丽故事主人 饰演你旧年共寻梦的恋人 再去做没流着情泪的伊人 假装再有从前演过的戏份 重饰演某段美丽故事主人 饰演你旧年共寻梦的恋人 你纵是未明白仍夜深一人 穿起你那无言毛衣当跟你接近 &#x1f3b5; 陈慧娴《傻女》 Scrapy 是…...

【笔记】太久不用redis忘记怎么后台登陆了

&#xff01;首先启动虚拟机linux的centos7 2.启动finalshell 我的redis启动在根目录用 redis-server redis.conf --启动 systemctl status redis --查看redis状态 是否active redis-cli -h centos的ip地址 -p 你要用的redis端口号&#xff08;默认为6379&#xff09; -a 你…...

昇思25天打卡营-mindspore-ML- Day14-VisionTransformer图像分类

今天学习了Vision Transformer图像分类&#xff0c;这是一种基于Transformer模型的图像分类方法&#xff0c;它不依赖卷积操作&#xff0c;而是通过自注意力机制捕捉图像块之间的空间关系&#xff0c;从而实现图像分类。 基本原理&#xff1a; 图像分块: 将原始图像划分为多个…...

微信环境内H5网页,用开放标签wx-open-launch-app打开app

一、微信公众号后台配置安全域名 准备一个认证通过的公众号&#xff0c;打开公众号后台 1、设置与开发 2、公众号设置 3、功能设置 4、配置js接口安全域名 二、微信开放平台&#xff0c;将公众号与APP关联 打开微信开放平台后台 1、管理中心 2、公众号 3、选择一个需要操作…...

【c++基础】高精度数不进位加法

高精度数不进位加法 谈及数字即可想到运算&#xff0c;那么高精度数怎么运算呢&#xff1f;今天来系统介绍一下高精度数的加法。 思考一下加法运算&#xff0c;我们可以简单将加法运算这样区分&#xff1a; 有无进位。位数是否相同。 这篇文章我们就来讨论一下无进位的高精度…...

UniApp 中 Web/H5 正确使用反向代理解决跨域问题

因为 Vue3 的构建工具是 Vite&#xff0c;所以配置 vue.config.js 是没用的&#xff08;Vue2 因为使用 webpack 所以才用这个文件&#xff09; 这里提供一份 vue.config.js 的示例&#xff1a; module.exports {devServer: {proxy: {/api: {target: http://example.com,chan…...

Redis Stream:实时数据流的处理与存储

Redis Stream:实时数据流的处理与存储 引言 在当今数据驱动的世界中,实时数据处理和存储成为了许多应用的核心需求。Redis Stream作为一种新兴的数据结构,为Redis带来了强大的流处理能力。本文将深入探讨Redis Stream的特点、使用场景以及如何高效地利用它来处理实时数据流…...

【论文阅读】-- Visual Traffic Jam Analysis Based on Trajectory Data

基于轨迹数据的可视化交通拥堵分析 摘要1 引言2 相关工作2.1 交通事件检测2.2 交通可视化2.3 传播图可视化 3 概述3.1 设计要求3.2 输入数据说明3.3 交通拥堵数据模型3.4 工作流程 4 预处理4.1 路网处理4.2 GPS数据清理4.3 地图匹配4.4 道路速度计算4.5 交通拥堵检测4.6 传播图…...

修改编译依赖openssl的libcrypto.so

由于centos7默认使用openssl1.0.2k的libcrypto.so.10共享库。即使openssl升级为3.0.11后&#xff0c;编译使用ldd命令查看共享库依旧会引用libcrypto.so.10。 现希望引用libcrypto.so.3&#xff0c;需要在生成动态链接库的CMakeLists.txt中增加如下配置&#xff0c;明确指定ope…...

����: �Ҳ������޷��������� javafx.fxml ԭ��: java.lang.ClassNotFoundException解决方法

如果你出现了这个问题&#xff0c;恭喜你&#xff0c;你应该会花很多时间去找解决方法。别问我怎么知道的... 解决方法&#xff1a; 出现乱码的原因&#xff1a;配置vm时 这些配置看似由有空格&#xff0c;换行&#xff0c;实则没有。所以解决办法就是&#xff0c;重新配置你…...

【C++】———— 继承

作者主页&#xff1a; 作者主页 本篇博客专栏&#xff1a;C 创作时间 &#xff1a;2024年7月5日 一、什么是继承&#xff1f; 继承的概念 定义&#xff1a; 继承机制就是面向对象设计中使代码可以复用的重要手段&#xff0c;它允许在程序员保持原有类特性的基础上进行扩展…...

TDengine 快速体验(Docker 镜像方式)

简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能&#xff0c;本节首先介绍如何通过 Docker 快速体验 TDengine&#xff0c;然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker&#xff0c;请使用 安装包的方式快…...

简易版抽奖活动的设计技术方案

1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...

Admin.Net中的消息通信SignalR解释

定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...

FFmpeg 低延迟同屏方案

引言 在实时互动需求激增的当下&#xff0c;无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作&#xff0c;还是游戏直播的画面实时传输&#xff0c;低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架&#xff0c;凭借其灵活的编解码、数据…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析

这门怎么题库答案不全啊日 来简单学一下子来 一、选择题&#xff08;可多选&#xff09; 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘&#xff1a;专注于发现数据中…...

镜像里切换为普通用户

如果你登录远程虚拟机默认就是 root 用户&#xff0c;但你不希望用 root 权限运行 ns-3&#xff08;这是对的&#xff0c;ns3 工具会拒绝 root&#xff09;&#xff0c;你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案&#xff1a;创建非 roo…...

在Ubuntu中设置开机自动运行(sudo)指令的指南

在Ubuntu系统中&#xff0c;有时需要在系统启动时自动执行某些命令&#xff0c;特别是需要 sudo权限的指令。为了实现这一功能&#xff0c;可以使用多种方法&#xff0c;包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法&#xff0c;并提供…...

自然语言处理——循环神经网络

自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元&#xff08;GRU&#xff09;长短期记忆神经网络&#xff08;LSTM&#xff09…...

使用 SymPy 进行向量和矩阵的高级操作

在科学计算和工程领域&#xff0c;向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能&#xff0c;能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作&#xff0c;并通过具体…...

使用Spring AI和MCP协议构建图片搜索服务

目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式&#xff08;本地调用&#xff09; SSE模式&#xff08;远程调用&#xff09; 4. 注册工具提…...