JAVA学习(2)-全网最详细~

🌈write in front🌈
🧸大家好,我是Aileen🧸.希望你看完之后,能对你有所帮助,不足请指正!共同学习交流.
🆔本文由Aileen_0v0🧸 原创 CSDN首发🐒 如需转载还请通知⚠️
📝个人主页:Aileen_0v0🧸—CSDN博客
🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝​
📣系列专栏:Aileen_0v0🧸的JAVA学习系列专栏🌸——CSDN博客
🗼我的格言:"没有罗马,那就自己创造罗马💫~"

目录

变量和类型​编辑

JAVA 中 package 的作用​编辑

JAVA 中 println print printf 三者的区别 ​编辑

 单位换算​编辑

整型取值范围​编辑

练习1​编辑: 

 Identifiers 标识符​编辑

练习2​编辑:

练习3​编辑:

练习4​编辑:

练习5​编辑:

练习6​编辑:

Summary​编辑


变量和类型


变量指的是程序运行时可变的量.

相当于开辟一块内存空间来保存一些数据

类型则是对变量的种类进行了划分,不同的类型的变量具有不同的特性

"变量"主要和我们的"内存"这样的硬件设备密切相关

输入设备:鼠标,键盘,话筒

输出设备:屏幕,耳机,音响

内存储器就是我们的CPU  ~

内存: RAM --->用于运行程序   如下,如果跑满16G电脑就会卡死

 运算器:进行逻辑运算

控制器:控制程序运行进程

 x = 5 这个变量就是储存在我们的内存中

上面是安卓系统运行内存8GB

JAVA 中 package 的作用

 在今天初写代码的时候,我遇到一个问题--->

Exception in thread "main" java.lang.Error:Unresolved compilation problem:

当我在第一行加上 package 文件名 这个错误就消失了

这是为什么呢?

package在Java中的作用是为了组织和管理Java类。它是一种命名空间,用于将具有相似功能或属于同一模块的类组织在一起

使用package可以使Java程序更加容易维护和组织

多个Java程序员协同开发一个大型Java项目时,使用package可以防止不同程序员之间的类名冲突。同时,使用package也可以使Java程序的可重用性更高。通过将相关类组织在同一package中,其他开发人员可以更轻松地使用和重用这些类。

要在Java中创建一个package,需要在每个Java类文件的开头添加package语句,指定类所属的package名称。例如:

package Oniline;
public class HelloWorld{public static void main(String[] args) {/** 1.整型int 占 4字节*/int a = 10;System.out.println(a);}
}

在这个例子中,HelloWorld类属于名为Oniline的package。其他Java类也可以属于同一package。如果其他Java类想要使用HelloWorld类只需使用完整的类名:Oniline.HelloWorld。

JAVA 中 println print printf 三者的区别 

package Oniline;
public class HelloWorld{public static void main(String[] args) {/** 1.整型int 占 4字节*/int a = 10;System.out.println(a);// 打印 且换行System.out.print(a);// 打印 但是不换行System.out.printf("%d\n",a);//以格式化形式进行内容输出}
}

 单位换算

整型取值范围

上面提到 一个int 是 4 字节 那么它就有 4 * 8 = 32位  

 对于正数有2^31 - 1种情况  减去全为0 的这一种情况

所以正数的范围是 0 - 2^31-1

负数范围是 -2^31 -  -1

所以整型取值范围是  -2^31  -   2^31 - 1

package Oniline;
public class HelloWorld{public static void main(String[] args) {/** 1.整型int 占 4字节*/int a = 10;System.out.println(Integer.MAX_VALUE);System.out.println(Integer.MIN_VALUE);//Integer 用于包装类 相当于int//		System.out.println(a);// 打印 且换行
//		System.out.print(a);// 打印 但是不换行
//		System.out.printf("%d\n",a);//以格式化形式进行内容输出}
}

 通过命令行执行结果可知最大值是2147483647 , 最小值是 -2147483648. 

package Oniline;
public class HelloWorld{public static void main(String[] args) {/** 1.整型int 占 4字节*/int max = Integer.MAX_VALUE;System.out.println(max);
//		int a = 10;
//		System.out.println(Integer.MAX_VALUE);
//		System.out.println(Integer.MIN_VALUE);//Integer 用于包装类 相当于int//		System.out.println(a);// 打印 且换行
//		System.out.print(a);// 打印 但是不换行
//		System.out.printf("%d\n",a);//以格式化形式进行内容输出}
}

 控制台运行结果:

如果我们`在其后+1

 控制台输出结果:由原来的 最大值变成了最小值  就像是上面的那个圆

练习1

int a;
System.out.println(a);

根据代码,猜测它的输出结果是什么: 随机数,0,还是输出错误 

根据结果报错可知,JAVA中一个变量没有初始化我们就不能使用他. 

但是如果我们给它初始化以后,控制台就可以正常编译了

 Identifiers 标识符

package Oniline;
public class HelloWorld{public static void main(String[] args) {/** 1.整型int 占 4字节* 2.标识符 : 数字 字母 下划线 $*/int a = 0;System.out.println(2a);}
}

「Identifiers」 are for naming variables, constants, methods, classes, and packages.  标识符用于命名变量,常量,方法,类和包

「Descriptive」identifiers make programs easy to read. 描述性的标识符使程序易于明白

Since Java is 「case sensitive」, area,  Area, and AREA are all different identifiers. 严格区分大小写 

练习2:

Which of these data types requires the most amount of memory?

 A. long  

B. int  

C. short  

D. double  

E. float 

double requires the most amount of memory among the given data types because it store floating-point numbers with greater precision than float data type. Double data type occupies 8 bytes (64 bits) of memory while int, short, long, and float take up 4 bytes (32 bits) of memory each.

在给定的数据类型中,double需要最多的内存空间。一个double类型的变量通常需要64位(1字节=8位)的内存空间来存储。这是因为double类型被设计用来存储双精度浮点数,这种类型的数具有更高的精度和范围,需要更多的内存空间来存储。
相比之下,像int或long这样的整数类型通常只需要32位或64位的内存空间,而char这样的字符类型通常只需要8位(1字节)的内存空间。因此,double类型需要比其他数据类型更多的内存空间。--->选D

练习3:

Every letter in a Java keyword(reserved words) is in lowercase?

 A. true                  

B. false 

上面思维导图有介绍什么是保留字以及Java keyword(reserved words)保留字约定俗成的都用小写表示.--->选A

练习4:

Which of the following is a valid identifier?

 A. $343  

B. class

 C. 9X

 D. 8+9  

E. chocolate 

A. $343 - 在许多编程语言中,以美元符号($)开始,后面跟数字不是有效的标识符。但在某些语言(如JavaScript)中,它可能被解析为一个合法的标识符。但在Java中虽然可以写成这样,但是不建议这样写

B. class - 在Java中,class是一个关键字-reserved word,不能作为标识符-identifier使用。

C. 9X - 以数字开头,后面跟字母不是大多数编程语言所允许的。

D. 8+9 - 这是一个表达式,不是一个标识符。

E. chocolate - 这完全符合标识符的规则,是一个有效的标识符。

--->选AE

练习5:

Which of the following are correct names for variables according to Java naming conventions?

A. radius

B. Radius    

C. RADIUS

D. findArea        

E. FindArea

According to Java naming conventions, the following are the correct names for variables:
A. radius
D. findArea
Java区分大小写,因此变量名称需要以小写字母开头。只有当大写字母是较大单词的一部分时,才允许使用大写字母,例如“Radius”。名称不应包含特殊字符或数字,下划线“_”除外。

--->选A和D

Java中,全部字母大写通常用来定义常量。这是一种规范,可以让其他开发人员在阅读代码时更易于识别和理解这些值是不变的。常量的值在程序运行期间是无法更改的,因此它们必须在声明时就确定其值。常量的声明方式为:

public static final 数据类型 常量名 = 值;

其中,public表示常量可以被任何类访问

static表示常量是静态的,它属于类而不是对象

final表示该常量的值不可修改

大写字母可用于增强常量的可读性和识别性。例如:

public static final int MAX_NUMBER = 100;

在程序的其他部分中,可以使用MAX_NUMBER来引用该常量的值,而无需担心它会被更改。

B.Radius开头字母大写 和 E.FindArea驼峰形式的命名都是 class类的命名格式

练习6:

Which of the following are correct ways to declare variables?

A. int length; int width;

B. int length, width;

C. int length; width;

D. int length, int width;

正确的声明变量方式是选项A和B
A. int length; int width;
B. int length, width;
在Java中,每个变量都需要独立地进行声明和初始化。因此,选项A和B都是正确的。选项C和D则存在错误,因为width变量没有被声明或初始化。

Summary

1.如何定义一个int类型的变量

2.int 类型在Java当中 就是4字节

3.int 最大值和最小值

4.如果一个局部变量,没有进行初始化,那就不能够使用它

5.Java 只有局部变量和成员变量(在类内部,方法外部的变量) 没有全局变量--->体现JAVA安全性 


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

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

相关文章

选择排序算法:简单但有效的排序方法

在计算机科学中,排序算法是基础且重要的主题之一。选择排序(Selection Sort)是其中一个简单但非常有用的排序算法。本文将详细介绍选择排序的原理和步骤,并提供Java语言的实现示例。 选择排序的原理 选择排序的核心思想是不断地从…

CCF CSP认证 历年题目自练 Day20

题目一 试题编号: 201903-1 试题名称: 小中大 时间限制: 1.0s 内存限制: 512.0MB 问题描述: 题目分析(个人理解) 常规题目,先看输入,第一行输入n表示有多少数字&am…

axb_2019_brop64

axb_2019_brop64 Arch: amd64-64-little RELRO: Partial RELRO Stack: No canary found NX: NX enabled PIE: No PIE (0x400000)64位,只开了NX __int64 repeater() {size_t v1; // raxchar s[208]; // [rsp0h] [rbp-D0h] BYREFprintf("…

小谈设计模式(15)—观察者模式

小谈设计模式(15)—观察者模式 专栏介绍专栏地址专栏介绍 观察者模式核心思想主要角色Subject(被观察者)ConcreteSubject(具体被观察者)Observer(观察者)ConcreteObserver&#xff0…

HTML的学习 Day02(列表、表格、表单)

文章目录 一、列表列表主要分为以下三种类型:1. 无序列表(Unordered List):2. 有序列表(Ordered List):将有序列表的数字改为字母或自定义内容li.../li 列表项标签中value属性,制定列…

【简单的留言墙】HTML+CSS+JavaScript

目标&#xff1a;做一个简单的留言墙 1.首先我们用HTML的一些标签&#xff0c;初步构造区域 样式。 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>留言墙</title><style>/* ...... */ …

FFmpeg 命令:从入门到精通 | ffmpeg filter(过滤器 / 滤镜)

FFmpeg 命令&#xff1a;从入门到精通 | ffmpeg filter&#xff08;过滤器 / 滤镜&#xff09; FFmpeg 命令&#xff1a;从入门到精通 | ffmpeg filter&#xff08;过滤器 / 滤镜&#xff09;ffmpeg fliter 基本内置变量视频裁剪文字水印图片水印画中画视频多宫格处理 FFmpeg 命…

使用 cURL 发送 HTTP 请求: 深入探讨与示例

&#x1f337;&#x1f341; 博主猫头虎 带您 Go to New World.✨&#x1f341; &#x1f984; 博客首页——猫头虎的博客&#x1f390; &#x1f433;《面试题大全专栏》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &a…

美丽的图论

**美丽的图论 ** Prf &#x1f609; 对于 n 个顶点上的树的数量 n^(n-2)&#xff0c;这是凯莱公式&#xff0c;用于计算 n 个顶点上的树的数量&#xff0c;被放置在一个由 4 个标记顶点组成的圆圈中。 使用 Figma 制作 在图论中&#xff0c;树只是一个没有环的图。 树在离散…

【MATLAB-基于直方图优化的图像去雾技术】

【MATLAB-基于直方图优化的图像去雾技术】 1 直方图均衡2 程序实现3 局部直方图处理 1 直方图均衡 直方图是图像的一种统计表达形式。对于一幅灰度图像来说&#xff0c;其灰度统计直方图可以反映该图像中不同灰度级出现的统计情况。一般而言&#xff0c;图像的视觉效果和其直方…

javaWeb学生信息管理

一、引言 学生信息管理系统是基于Java Web技术开发的一个全栈应用&#xff0c;用于管理学生的基本信息。本系统采用Eclipse作为开发工具&#xff0c;Navicat用于MySQL数据库管理&#xff0c;运行在JDK1.8、Tomcat9.0、MySQL8.0环境下。前端采用JavaScript、jQuery、Bootstrap4…

五款可替代163邮箱的电子邮件服务

在众多邮箱品牌中&#xff0c;163邮箱作为中国最早的邮箱服务提供商之一&#xff0c;其出海之路并不顺利。本文将探讨163邮箱出海的劣势&#xff0c;并介绍一些替代品&#xff0c;以帮助用户更好地选择适合自己的邮箱服务。 “163邮箱的替代品有哪些&#xff1f;外贸行业适合选…

Go_原子操作和锁

原子操作和锁 本文先探究并发问题&#xff0c;再探究锁和原子操作解决问题的方式&#xff0c;最后进行对比。 并发问题 首先&#xff0c;我们看一下程序 num该程序表面看上去一步就可以运行完成&#xff0c;但是实际上&#xff0c;在计算机中是分三步运行的&#xff0c;如下…

世界第一ERP厂商SAP,推出类ChatGPT产品—Joule

9月27日&#xff0c;世界排名第一ERP厂商SAP在官网宣布&#xff0c;推出生成式AI助手Joule&#xff0c;并将其集成在采购、供应链、销售、人力资源、营销、数据分析等产品矩阵中&#xff0c;帮助客户实现降本增效。 据悉&#xff0c;Joule是一款功能类似ChatGPT的产品&#xf…

国庆day2---select实现服务器并发

select.c&#xff1a; #include <myhead.h>#define ERR_MSG(msg) do{\fprintf(stderr,"__%d__:",__LINE__);\perror(msg);\ }while(0)#define IP "192.168.1.3" #define PORT 8888int main(int argc, const char *argv[]) {//创建报式套接字socketi…

S-Clustr(影子集群)僵尸网络@Мартин.

公告 项目地址:https://github.com/MartinxMax/S-Clustr/tree/V1.0.0 1.成功扩展3类嵌入式设备,组建庞大的"僵尸网络" |——C51[开发中] |——Arduino |——合宙AIR780e[开发中] 2.攻击者端与服务端之间通讯过程全程加密,防溯源分析 3.Generate一键自动生成Arduino…

【机器学习】熵和概率分布,图像生成中的量化评估IS与FID

详解机器学习中的熵、条件熵、相对熵、交叉熵 图像生成中常用的量化评估指标通常有Inception Score (IS)和Frchet Inception Distance (FID) Inception Score (IS) 与 Frchet Inception Distance (FID) GAN的量化评估方法——IS和FID&#xff0c;及其pytorch代码

计算机组成原理期末复习

第一章 上机前的准备&#xff1a;建立数学模型、确定计算方法和编制解题程序n位操作码有 2 n 2^n 2n种不同操作主储存器&#xff08;主存/内存&#xff09;包括存储体M、各种逻辑部件及控制电路。储存体有多个储存单元&#xff0c;储存单元有多个储存元件&#xff0c;每个存储…

《视觉 SLAM 十四讲》V2 第 4 讲 李群与李代数 【什么样的相机位姿 最符合 当前观测数据】

P71 文章目录 4.1 李群与李代数基础4.1.3 李代数的定义4.1.4 李代数 so(3)4.1.5 李代数 se(3) 4.2 指数与对数映射4.2.1 SO(3)上的指数映射罗德里格斯公式推导 4.2.2 SE(3) 上的指数映射SO(3),SE(3),so(3),se(3)的对应关系 4.3 李代数求导与扰动模型4.3.2 SO(3)上的李代数求导…

分布式并行训练(DP、DDP、DeepSpeed)

[pytorch distributed] 01 nn.DataParallel 数据并行初步 数据并行 vs. 模型并行 数据并行&#xff1a;模型拷贝&#xff08;per device&#xff09;&#xff0c;数据 split/chunk&#xff08;对batch切分&#xff09; 每个device上都拷贝一份完整模型&#xff0c;每个device分…