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>

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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

权力之望怎么注册账号创建角色 权利之网角色账号注册教程

权力之望是一款全新的大型MMORPG游戏&#xff0c;拥有9把独特武器和56种职业组合&#xff0c;并搭配了超炫酷的战斗画面&#xff0c;全程采用低俯视角游戏&#xff0c;让玩家能体验到更强的操作感和爽快感。这款游戏主打高养成自由度玩家可以自由更换武器进行战斗&#xff0c;还…

MySQL之表的约束(下)

自增长 auto_increment&#xff1a;当对应的字段&#xff0c;不给值&#xff0c;会自动的被系统触发&#xff0c;系统会从当前字段中已经有的最大值 1操作&#xff0c;得到一个新的不同的值。通常和主键搭配使用&#xff0c;作为逻辑主键。 自增长的特点&#xff1a; 1. 任何一…

SSM慢性病患者健康管理系统-计算机毕业设计源码04877

目 录 摘要 1 绪论 1.1 研究意义 1.2研究目的 1.3论文结构与章节安排 2 慢性病患者健康管理系统系统分析 2.1 可行性分析 2.1.1 技术可行性分析 2.1.2 经济可行性分析 2.1.3 法律可行性分析 2.2 系统功能分析 2.2.1 功能性分析 2.2.2 非功能性分析 2.3 系统用例分…

python语句性能分析

1、for语句性能优于while import timeif __name__ __main__:start_time time.time()for i in range(10 ** 8):passend_time time.time()run_time end_time - start_timeprint(run_time)i 0start_time time.time()while i < 10 ** 8:i 1end_time time.time()run_tim…

【CSAPP】-cachelab实验

目录 实验目的与要求 实验设备与软件环境 实验过程与结果&#xff08;可贴图&#xff09; 操作异常问题与解决方案 实验总结 实验目的与要求 1、掌握应用程序性能的优化方法&#xff1b; 2、理解存储器层次结构在程序运行过程中所起的重要作用&#xff1b; 3、让学生更好…

一网统管/视频汇聚/安防监控平台EasyCVR启动后无法访问是什么原因?

智慧城市/一网统管/视频汇聚/安防监控平台EasyCVR兼容性强&#xff0c;支持多协议接入&#xff0c;包括国标GB/T 28181协议、GA/T 1400协议、部标JT808协议、RTMP、RTSP/Onvif协议、海康Ehome、海康SDK、大华SDK、华为SDK、宇视SDK、乐橙SDK、萤石云SDK等&#xff0c;并能对外分…

科普文:jvm实战(六)搞懂各个版本JDK和GC

jdk6&#xff0c;7&#xff0c;8三个版本的内存模型 如图所示 JDK 1.6、1.7、1.8 的内存模型演变过程&#xff0c;其实这个内存模型就是 JVM 运行时数据区依照JVM虚拟机规范的具体实现过程。 JDK 1.6&#xff1a;程序计数器、Java虚拟机栈、本地方法栈、堆、方法区[永久代]&am…

C++系列-String(四)String初步的模拟实现

&#x1f308;个人主页&#xff1a;羽晨同学 &#x1f4ab;个人格言:“成为自己未来的主人~” 下面的这些是我们这篇文章将要实现的String的功能&#xff1a; #pragma once #include<iostream> #include<assert.h> using namespace std;namespace bit {class…

下载程序到仿真

第一步&#xff0c;新建工程 第二步&#xff0c;设备组态 第三步&#xff0c;地址分配 需要注意的是&#xff0c;分配地址的范围&#xff0c;是CPU决定的。 关于常见数据类型 下载与仿真 一般安装好博图会自带。 PLCSIM/PLCSIM Advanced PLCSIM普通仿真 PLCSIM Advanced高级…

Spark 分布式弹性计算集(RDD)相关概念介绍

目录 一、概述 二、RDD的核心概念 2.1 Partition 2.2 Partitioner 2.3 RDD的依赖关系 2.4 Stage 2.5 PreferredLocation 2.6 CheckPoint 三、RDD的持久化 3.1 概述 3.2 概念 3.3 RDD持久化级别 3.3.1 MEMORY_ONLY 3.3.2 MEMORY_AND_DISK 3.3.3 MEMORY_ONLY_SER …

昇思第18天打卡|ShuffleNet图像分类

ShuffleNet网络介绍 ShuffleNetV1是旷视科技提出的一种计算高效的CNN模型&#xff0c;和MobileNet, SqueezeNet等一样主要应用在移动端&#xff0c;所以模型的设计目标就是利用有限的计算资源来达到最好的模型精度。ShuffleNetV1的设计核心是引入了两种操作&#xff1a;Pointw…

使用命令行修改Ubuntu 24.04的网络设置

Ubuntu里&#xff0c;使用命令行下修改IP地址&#xff0c;网上有很多方案&#xff0c;我最终觉得这个方案&#xff08;使用Netplan&#xff09;最好&#xff0c;最根本&#xff0c;记录下来备查 1.使用命令ip link show 查看Ubuntu上可以使用的网络接口名称 2.查找Netplan的配…

「Java开发指南」如何用MyEclipse完成Spring Web Flow 2.0搭建?

本教程将引导您完成Spring Web Flow的软件组件生成&#xff0c;这是Spring的一个项目&#xff0c;用于简化Web应用程序的开发。虽然Spring Web Flow与Spring MVC兼容&#xff0c;但Spring Web Flow使用流而不是控制器来实现应用程序的Web层。在本教程中&#xff0c;您将学习如何…

放大镜案例

放大镜 <!DOCTYPE html> <html lang"zh-cn"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>商品放大镜</title><link rel&qu…

可控硅整流自动恒流充电器设计制作

该充电器除可为各种镍镉电池充电外&#xff0c;也可为干电池充电。其充电电流可调。充电终止电压由RP1预先确定。 工作原理 电路原理见图1。开始充电时&#xff0c;电池组两端电压较低&#xff0c;不足以使晶体管VT导通。由RC组成的移相电路给可控硅提供触发电流。移相角度由R…

Java技术栈总结:Spring框架篇

一、SpringBean 1、定义方式 </bean>标签&#xff08;XML文件&#xff09;Bean注解Component注解BeanDefinition方法FactoryBeanSupplier 注&#xff1a;BeanDefinition方法为“</bean>标签、Bean注解、Component注解”的底层实现。 &#xff08;1&#xff09;…

【K8s】专题六(5):Kubernetes 稳定性之重启策略、滚动更新策略

以下内容均来自个人笔记并重新梳理&#xff0c;如有错误欢迎指正&#xff01;如果对您有帮助&#xff0c;烦请点赞、关注、转发&#xff01;欢迎扫码关注个人公众号&#xff01; 目录 一、重启策略 1、基本介绍 2、资源清单&#xff08;示例&#xff09; 二、滚动更新策略 …

深度网络现代实践 - 深度前馈网络之反向传播和其他的微分算法篇-续

序言 反向传播&#xff08;Backpropagation&#xff0c;简称backprop&#xff09;是神经网络训练过程中最关键的技术之一&#xff0c;尤其在多层神经网络中广泛应用。它是一种与优化方法&#xff08;如梯度下降法&#xff09;结合使用的算法&#xff0c;用于计算网络中各参数的…

Zabbix自动发现

目录 自动发现的主要特点包括&#xff1a; 如何配置自动发现&#xff1a; 实验步骤 1. 创建自动发现规则 2. 给自动发现规则创建动作 3. 给新主机安装agent 在 Zabbix 中&#xff0c;自动发现&#xff08;Auto Discovery&#xff09;是一种强大的功能&#xff0c;用于自…

Vue CoreVideoPlayer 一款基于 vue.js 的轻量级、优秀的视频播放器组件

大家好,我是程序视点的小二哥!今天小二哥给大家推荐一款非常优秀的视频播放组件 效果欣赏 介绍 Vue-CoreVideoPlayer 一款基于vue.js的轻量级的视频播放器插件。 采用Adobd XD进行UI设计&#xff0c;支持移动端适配,不仅功能强大&#xff0c;颜值也是超一流&#xff01; Vue-…