Java启蒙之语言基础
目录
一.Java标识符和关键字
1.1Java标识符
1.2Java关键字
二.数据类型和变量的概述和关系
2.1Java变量
2.2Java的数据类型
2.2.1数据类型的分类的概述
2.2.2数据类型的转换
3.Java运算符
总结
😽个人主页:tq02的博客_CSDN博客-领域博主
🌈理想目标:努力学习,向Java进发,拼搏一切,找到一份朝九晚五,有假期的工作,让自己的未来不会有遗憾。
🎁欢迎各位→点赞👍 + 收藏⭐ + 评论📝+关注✨今日毒鸡汤:小时候做过的最蠢的事,可能是盼着长大吧。
一.Java标识符和关键字
1.1Java标识符
标识符:程序中给类、函数、变量等取的名字,会被编译器识别,不会在程序里起冲突。
定义规则:
- 由字母、“_”、“$”和数字组成。
- 以字母、“_”、“$”开头。
- 不可于关键字同名。
- 区分大小写
1.2Java关键字
关键字:又名Java保留字,为Java语言本身提供的一种特殊的标识符。在Java中已经使用了的文字,在编程时不能使用的存在。
注:Java关键字有50个,以上是部分关键字。
二.数据类型和变量的概述和关系
在学习C语言,我们也接触过数据类型和变量,但是在Java中,同样也存在数据类型和变量。可以说我们无论用哪种语言敲代码,我们都离不开数据类型和变量的使用。
2.1Java变量
变量指的是程序运行时可变的量.相当于开辟一块内存空间来保存一些数据. Java语言的变量分为2种:基本数据类型变量 、引用变量
基本数据类型变量:使用了基本数据类型的变量
引用变量:非使用了基本数据类型的变量。
命名规则:
1.声明一个变量之后,必须用赋值语句对变量进行初始化, 千万不要使用未初始化的变量,Java 编译器认为这样的语句序列是错误的.
2.变量名必须是一个以字母开头并由字母或数字构成的序列, 但 '+'和 ' © ’ 这样的符号不能出现在变量名中,空格也不行。并且大小写敏感。
个人建议:
1.命名时尽量使变量名中所有的字符都是有意义的.
2.在对两个不同的变量进行命名时, 最好不要只存在大小写上的差异.
3.尽管 $ 是一个合法的 Java 字符, 但不要在你自己的代码中使用这个字符. 它只用在 Java 编译器或其他工具生成的名字中.
2.2Java的数据类型
2.2.1数据类型的分类的概述
数据类型则是对变量的种类进行了划分,不同的类型的变量具有不同的特性。
Java数据类型分为两种 :基本数据类型和引用数据类型
Java基本数据类型源于C语言,但又有一部分的差别,java基本数据类型一共有8种
以上就是基本数据类型,可以看见部分数据类型和C语言不一样,例如,char在C语言里是一个字节,而在Java里则是2个字节。
Java引用数据类型非常多,大致包括:
类、 接口类型、 数组类型、 枚举类型、 注解类型、 字符串型
简单而言:非基本数据类型的都是引用数据类型。
2.2.2数据类型的转换
数据类型转换分为2种,第一种为自动类型转换、第二种为强制类型转换
自动类型转换:当系统支持把某个基本数据类型直接赋值给另一种数据类型,则为自动类型转换。
自动转换如上图
当有两种不同数据类型运算时,左边的数据类型会自动转换为右边的数据类型。
代码示例:
public class main1 {public static void main(String[] args) {char c='a'; //在ASCII码值里为97int a=10;double d=1.5;boolean y=true;System.out.println(c+a); //结果为 107System.out.println(a+d); //结果为11.5//System.out.println(a+y); 运算类型不同,无法编译,报错}
}
如图,很明显严格按照自动转换图。而boolean并不在图中,,无法转换。
强制类型转换:通过强制类型转换运算符即(类型名)来强制进行类型转换。
代码示例:
public class main1 {public static void main(String[] args) {int a1=349;byte b1=(byte)a1;System.out.println(b1); //打印出93的值}
}
为什么会输出93呢?道理很简单,int类型为4个字节,而byte为1个字节。所以会损失一部分数值。你可以试想一下,一个250ml的杯子去装500ml的水,肯定会有250ml的水浪费了。而这便是强制转换,可能会损失数值
三.Java运算符
Java运算符也来源于C语言,和C语言运算符大体相同,但也有细节区分。
图片来源于百度
和C语言的比较:
(1) Java 取消了C 语言的 sizeof()运算符。sizeof用于求括号中的内容在内存中所占字节数。
(2) Java 新增了一个 instanceof 的运算,一般形式为 对象名 instanceof 类名; 用以判断左边的对象是否是右边类的实例,运算返回 true 或 false。 (3)Java 的关系运算和逻辑运算的结果为 boolean,即逻辑真或逻辑假,而 C语言的关系运算或逻辑运算得到的结果是用整数 1和0代表真和假。
总结
Java、C++等都是强类型语言(一种总是强制类型定义的语言,要求变量的使用要严格符合定义,所有变量都必须先定义后使用).也就是说,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了,并且当数据类型错误时编译器报错。
C语言运算符查询:http://t.csdn.cn/TYCTw
若有不懂,可在评论区留言或者私信。
相关文章:

Java启蒙之语言基础
目录 一.Java标识符和关键字 1.1Java标识符 1.2Java关键字 二.数据类型和变量的概述和关系 2.1Java变量 2.2Java的数据类型 2.2.1数据类型的分类的概述 2.2.2数据类型的转换 3.Java运算符 总结 😽个人主页:tq02的博客_CSDN博客-领域博主 &#…...
数据库系统--T-SQL数据查询功能-多表查询(超详细/设计/实验/作业/练习)
目录课程名:数据库系统内容/作用:设计/实验/作业/练习学习:T-SQL数据查询功能-多表查询一、前言二、环境与设备三、内容四、内容练习题目:对应题目答案:五、总结课程名:数据库系统 内容/作用:设…...
Spring Boot 3.0系列【14】核心特性篇之Configuration相关注解汇总介绍
有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot版本3.0.3 源码地址:https://gitee.com/pearl-organization/study-spring-boot3 文章目录 前言@Configuration@ConfigurationProperties@EnableConfigurationProperties@ConfigurationPropertiesScan@Configuratio…...
[ubuntu][jetson]给jetson增加swap空间类似于给windows加虚拟内存
具体操作如下: #打开性能模式 sudo nvpmodel -m 0 && sudo jetson_clocks #增加swap空间,防止爆内存 swapoff -a sudo fallocate -l 15G /swapfile sudo chmod 600 /var/swapfile sudo mkswap /swapfile sudo swapon /swapfile…...

小黑子—Java从入门到入土过程:第二章
Java零基础入门2.0Java系列第二章1. 注释和关键字2. 字面量3. 变量3.1 基本用法3.2 使用方式3.3 注意事项4. 变量练习5. 计算机中的数据存储5.1 计算机的存储规则5.2 进制5.3 进制间转换二进制转十八进制转十十六进制转十十进制转其他进制6. 数据类型7. 定义变量的练习8. 标识符…...
ElasticSearch搜索详细讲解与操作
全文检索基础 全文检索流程 流程: #mermaid-svg-7Eg2qFEl06PIEAxZ {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-7Eg2qFEl06PIEAxZ .error-icon{fill:#552222;}#mermaid-svg-7Eg2qFEl06PIEAxZ .error…...

web实现太极八卦图、旋转动画、定位、角度、坐标、html、css、JavaScript、animation
文章目录前言1、html部分2、css部分3、JavaScript部分4、微信小程序演示前言 哈哈 1、html部分 <div class"great_ultimate_eight_diagrams_box"><div class"eight_diagrams_box"><div class"eight_diagrams"><div class&…...

【LeetCode】33. 搜索旋转排序数组、1290. 二进制链表转整数
作者:小卢 专栏:《Leetcode》 喜欢的话:世间因为少年的挺身而出,而更加瑰丽。 ——《人民日报》 目录 33. 搜索旋转排序数组 1290. 二进制链表转整数 33. 搜索旋转排序数组 33. 搜索旋转排序…...

IBM Semeru Windows 下的安装 JDK 17
要搞清楚下载那个版本,请参考文章:来聊聊 OpenJDK 和 JVM 虚拟机下载地址semeru 有认证版和非认证版,主要是因为和 OpenJ9 的关系和操作系统的关系而使用不同的许可证罢了,本质代码是一样的。在 Windows 下没有认证版,…...

Lambda表达式和steram流
目录 引言: 语法: Lambda 表达式实例: demo演示: Stream流: 引言: Lambda 表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性。 Lambda 允许把函数作为一个方法的参数(函…...

面试必会-MySQL篇
1. Mysql查询语句的书写顺序Select [distinct ] <字段名称>from 表1 [ <join类型> join 表2 on <join条件> ]where <where条件>group by <字段>having <having条件>order by <排序字段>limit <起始偏移量,行数>2. Mysql查询语…...

Hadoop入门常见面试题与集群时间同步操作
目录 一,常用端口号 Hadoop3.x : Hadoop2.x: 二,常用配置文件: Hadoop3.x: Hadoop2.x: 集群时间同步: 时间服务器配置(必须root用户): (1)…...
JS 数组去重的方法
// 数组去重 const arr ["1", "1", "2", "3", "5", "3", "1", "5", "4"] console.log(this.deduplicate(arr)) // [1, 2, 3, 5, 4] // 数组对象去重 const arr [ { id: 1, nam…...

PMP项目管理项目沟通管理
目录1 项目沟通管理2 规划沟通管理3 管理沟通4 监督沟通1 项目沟通管理 项目沟通管理包括通过开发工件,以及执行用于有效交换信息的各种活动,来确保项目及其相关方的信息需求得以满足的各个过程。项目沟通管理由两个部分组成:第一部分是制定…...

2.JVM常识之 运行时数据区
1.JVM核心组成 2.JVM 运行时数据区(jdk8) 程序计数器:线程私有,当前线程所执行字节码的行号指示器 jvm栈:线程私有,Java 虚拟机栈为 JVM 执行 Java 方法服务 本地方法栈:线程私有,本…...

你的游戏帐号是如何被盗的
据报道,2022上半年,中国游戏市场用户规模达到了5.54亿人,游戏市场销售收入1163.1亿元,相较去年均为同比增长的情况。如此庞大的市场规模,黑色产业链是绕不开的话题。 但相较于游戏中大家常见的玩家与玩家、玩家与官方…...

C++11异步编程
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言1、std::future和std::shared_future1.1 std:future1.2 std::shared_future2、std::async3、std::promise4、std::packaged_task前言 C11提供了异步操作相关的类…...
20230310----重返学习-DOM元素的操作-时间对象-定时器
day-024-twenty-four-20230310-DOM元素的操作-时间对象-定时器 复习 获取元素 id document.getElementById() 类名 document.getElementsByClassName() 标签名 document.getElementsByTagName() name属性 document.getElementsByName() 选择器 document.querySelector()docum…...

江苏专转本转本人后悔排行榜
江苏专转本转本人后悔排行榜 一、复习的太迟: 后悔指数:五颗星。 复习越到最后,时间一天天变少,要复习的内容还有很多,很多人都后悔没有早早开始,总想着多给我两月一定会考上的。 担心时间不够用,那就努力利…...

【算法时间复杂度】学习记录
最近开算法课,开几篇文章记录一下算法的学习过程。 关于算法的重要性 学习计算机当程序员的话,在编程过程中是绕不开算法这个大矿山的,需要我们慢慢挖掘宝藏。 算法(Algorithm)是指用来操作数据、解决程序问题的一组…...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...

接口测试中缓存处理策略
在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...

大数据学习栈记——Neo4j的安装与使用
本文介绍图数据库Neofj的安装与使用,操作系统:Ubuntu24.04,Neofj版本:2025.04.0。 Apt安装 Neofj可以进行官网安装:Neo4j Deployment Center - Graph Database & Analytics 我这里安装是添加软件源的方法 最新版…...
Admin.Net中的消息通信SignalR解释
定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...
uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖
在前面的练习中,每个页面需要使用ref,onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入,需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...
条件运算符
C中的三目运算符(也称条件运算符,英文:ternary operator)是一种简洁的条件选择语句,语法如下: 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true,则整个表达式的结果为“表达式1”…...

(二)原型模式
原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...

江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命
在华东塑料包装行业面临限塑令深度调整的背景下,江苏艾立泰以一场跨国资源接力的创新实践,重新定义了绿色供应链的边界。 跨国回收网络:废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点,将海外废弃包装箱通过标准…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...
CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云
目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...