Java启蒙之语言基础

news2024/11/24 19:04:11

目录

一.Java标识符和关键字

1.1Java标识符

1.2Java关键字

二.数据类型和变量的概述和关系

2.1Java变量

2.2Java的数据类型

2.2.1数据类型的分类的概述

2.2.2数据类型的转换

 3.Java运算符

总结


😽个人主页:tq02的博客_CSDN博客-领域博主

 🌈理想目标:努力学习,向Java进发,拼搏一切,找到一份朝九晚五,有假期的工作,让自己的未来不会有遗憾。
 🎁欢迎各位→点赞👍 + 收藏⭐ + 评论📝+关注✨

今日毒鸡汤:小时候做过的最蠢的事,可能是盼着长大吧。


一.Java标识符和关键字

1.1Java标识符

标识符:程序中给类、函数、变量等取的名字,会被编译器识别,不会在程序里起冲突。

定义规则:

  1. 由字母、“_”、“$”和数字组成。
  2. 以字母、“_”、“$”开头。
  3. 不可于关键字同名。
  4. 区分大小写

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码值里为97
        int a=10;
        double d=1.5;
        boolean y=true;
        System.out.println(c+a);  //结果为 107
        System.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    类名;     用以判断左边的对象是否是右边类的实例,运算返回 truefalse。                                                              (3)Java 的关系运算和逻辑运算的结果为 boolean,即逻辑或逻辑,而 C语言的关系运算或逻辑运算得到的结果是用整数 10代表真和假。


总结

         Java、C++等都是强类型语言(一种总是强制类型定义的语言,要求变量的使用要严格符合定义,所有变量都必须先定义后使用).也就是说,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了,并且当数据类型错误时编译器报错。

        C语言运算符查询:http://t.csdn.cn/TYCTw

        若有不懂,可在评论区留言或者私信。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

帧中继多点子接口配置

帧中继多点子接口配置 拓扑图: 设备参数: 设备 接口 DLCI 设备 接口 DLCI R1 S0/0/0 102 R2 S0/0/0 201 R1 S0/0/0 103 R3 S0/0/0 301 IP参数: 设备 接口 IP地址 子网掩码 默认网关 R1 S0/0/0.1 192.168.123.1 25…

荧光成像技术原理ICG-PEG-N3/COOH/NH2/Alkyne吲哚菁绿-聚乙二醇-叠氮

品牌:为华生物产地:广州产品名称:吲哚菁绿-聚乙二醇-叠氮英文名称:ICG-PEG-N3PEG分子量:600、800、1000、2000、3400、5000、10000质量:95%激发波长:785nm发射波长:821nm外观&#x…

【算法基础】最短路算法(朴素Dijkstra + 堆优化Dijkstra + Bellman-Ford +SPFA + Floyd)

一、最短路算法 1. 朴素Dijkstra算法 Dijkstra算法 用来求 所有边权都是正数 的 单源最短路。边权 即两个点之间的距离;单源, 即只求从源点(起点,终点也称为汇点)到其他点的最短距离; 朴素Dijkstra 算法适用于求 稠密图 的最短距离问题。稠密图是指边数有很多的图,假设…

Flask-mock接口数据流程

背景:由于在开发过程中,会遇到以下的痛点 1.服务端接口提测延期,具体接口逻辑未完成实现,接口未能正常调通,导致客户端提测停滞; 2.因为前期已在技术评审上已与客户端开发定好接口字段,客户端比…

【蓝桥杯-筑基篇】基础数学思维与技巧(2)

🍓系列专栏:蓝桥杯 🍉个人主页:个人主页 目录 🍪1.判断素数🍪 🥦2.大整数🥦 🍋3.求n的约数个数🍋 🍉4.数学归纳法🍉 🍓5.阶乘之和&#x1f3…

使用 typora软件 编写 markdown 写作的技巧

typora 编写 markdown 写作的技巧 作者:虚坏叔叔 博客:https://xuhss.com 早餐店不会开到晚上,想吃的人早就来了!😄 使用typora 编写 markdown 写作的时间久了后,会发现一些技巧 ,分享给大家 …

LeetCode206_206. 反转链表

LeetCode206_206. 反转链表 一、描述 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head [1,2,3,4,5] 输出:[5,4,3,2,1]示例 2: 输入:head [1,2] 输出&…

结构体内存大小

000、前言 要想计算结构体内存大小,就会涉及到一个结构体内存对齐的问题,而不是对其成员进行简单的加运算 (1)在写本博客之前 有位同学和我讨论了一个学校的题目,题目如下: 我借这道题目问了另外一位同…

JS学习笔记day05(完结)!

今日内容 零、 复习昨日 一、作业 二、BOM 三、定时器 四、正则表达式 零、 复习昨日 事件 事件绑定方式鼠标事件 onmouseoveronmouseoutonmousemove 键盘事件 onkeydownonkeyuponkeypress 表单事件 onfocusonbluronchangeonsubmit 页面加载事件 onload dom dom树查找dom do…

what data contract

URLS 笔记内容主要来自 https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/scenarios/cloud-scale-analytics/architectures/data-contracts Data contracts Data contracts are similar to service contracts or data delivery contracts.A contract also…

One-YOLOv5 v1.2.0发布:支持分类、检测、实例分割

One-YOLOv5 v1.2.0正式发布。完整更新列表请查看链接:https://github.com/Oneflow-Inc/one-yolov5/releases/tag/v1.2.0,欢迎体验新版本,期待你的反馈。 1 新版本特性 1. 同步了Ultralytics YOLOv5的上游分支v7.0,同时支持分类、目…

多校园SaaS运营智慧校园云平台源码 智慧校园移动小程序源码

智慧校园管理平台源码 智慧校园云平台源码 智慧校园全套源码包含:电子班牌管理系统、成绩管理系统、考勤人脸刷卡管理系统、综合素养评价系统、请假管理系统、电子班牌发布系统、校务管理系统、小程序移动端、教师后台管理系统、SaaS运营云平台(支持多学…

每天学一点之Stream流相关操作

StreamAPI 一、Stream特点 Stream是数据渠道,用于操作数据源(集合、数组等)所生成的元素序列。“集合讲的是数据,负责存储数据,Stream流讲的是计算,负责处理数据!” 注意: ①Str…

Java面试总结(六)

进程和线程的区别 根本区别: 进程时操作系统资源分配的基本单位,而线程是处理器任务调度和执行的基本单位。 资源开销: 每个进程都有自己独立的代码和数据空间(程序上下文),进程之间的切换开销比较大&…

狂扫近300万读者,蟒蛇书升级版即将出版,招募审读人

狂扫全世界近 300 万爱好者成为编程领域的现象级爆品豆瓣累计超过 5000 人评价第2版中文版获得了 9.3 分的好评Amazon 近 10000 人评价第2版原版获得了 4.7 星好评毫不夸张,它是全世界读者心中的 Python 入门圣经因为封面上是一只蠢萌的蟒蛇这本书又被读者亲切地称为…

SQL注入——文件上传

目录 一,mysql文件上传要点 二,文件上传指令 一句话木马 三,实例 1,判断注入方式 2,测试目标网站的闭合方式: 3,写入一句话木马 4,拿到控制权 一,mysql文件上传…

【面试系列】volatile的底层原理

并发编程的三大特性 原子性可见性原子性 JAVA内存模型 Java内存模型(Java Memory Model)主要分为主内存和线程工作内存。 主内存:方法区和堆空间 线程工作内存:虚拟机栈,本地方法栈,程序计数器。 所有…

centos安装docker详细步骤

目录 一.前言 1.环境要求2.官网中文安装参考手册 二.安装步骤 1.卸载旧版本2.安装需要的软件包3.设置docker镜像源 1.配置docker镜像源 方式1:官网地址(外国):方式2:阿里云源:2.查看配置是否成功 4.更新yum软件包索引5.可以查看…

C++ | 探究函数重载的原理:函数名修饰【基于Windows + Linux双系统】

文章目录一、前言【中国乒乓和中国男足】【文言文一词多义】二、函数重载概念引入1、参数【类型】不同构成重载2、参数【个数】不同构成重载3、参数【类型顺序】不同构成重载三、函数重载的原理1、回顾程序编译 链接的过程2、Linux下【objdump】查看反汇编3、Windows下反汇编查…

Maven安装与配置,IDEA配置Maven

文章目录1. 安装本地Maven2. 安装3. 配置环境变量4. 配置settings.xml文件5. IDEA配置1. 安装本地Maven 官网下载:https://maven.apache.org/download.cgi 2. 安装 把下载好的maven压缩包解压到一个没有中文,空格或其他特殊字符的文件夹,…