首页 > 编程语言 >计算机 JAVA 语言的基础小总结

计算机 JAVA 语言的基础小总结

时间:2023-12-22 15:46:18浏览次数:38  
标签:总结 初始化 JAVA 计算机 int 数组 类型 Java 取值

计算机 JAVA 语言的基础小总结 一维数组和二维数组的定义及初始化

在Java中,数组是一种数据结构,用于存储多个数据。数组中的元素是相同类型的数据。数 组是一个引用数据类型,数组的变量只是一个引用,数组元素和数组变量在内存里是分开存放 的。

一维数组的定义和初始化

一维数组在Java中的定义如下:

int[] array;

一维数组的初始化可以采用静态初始化和动态初始化两种方式。静态初始化是指在定义数组时 就指定每个数组元素的初始值,由系统决定数组长度。动态初始化是指在定义数组时只指定数 组的长度,由系统为数组元素分配初始值。

例如,以下是静态初始化的方式:

int[] b = new int[]{1,2,3,4};

以下是动态初始化的方式:

int[] c = new int [];

二维数组的定义和初始化

二维数组在Java中的定义如下:

float A[][];
char B[][];
int C[][];

二维数组的初始化可以采用静态初始化和动态初始化两种方式。静态初始化是指在定义数组时 就指定每个数组元素的初始值,由系统决定数组的行数。动态初始化是指在定义数组时只指定 数组的行数,由系统为每一行的元素分配初始值 。

例如,以下是静态初始化的方式:

int[][] d = new int [][];

以下是动态初始化的方式:

int[][] e = new int [][];

函数传值

在Java中,函数参数的传递方式有两种:传值和传引用。对于基本数据类型(如int、float、 double等),它们是传值的,也就是说,函数接收到的是这些值的副本,而不是原始值本 身。因此,对这些值的任何修改不会影响原始值。

然而,对于对象类型(如数组、类等),它们是传引用的,也就是说,函数接收到的是对象的 地址,而不是对象本身。因此,对这些对象的任何修改都会影响原始对象。

例如,假设有一个函数 void modifyArray(int[] nums) ,这个函数接受一个整数数组作为参 数,那么在函数内部对数组元素的任何修改都会影响到原始数组。

字符(串)、 int、 long 、float、double、 BigIntenger的数据范 围

字符和字符串

字符(Char) 的取值范围

在Java中, char 是一个16位的无符号整数数据类型,用于表示Unicode字符。它的取值 范围是从0 到 65535,即 '\u0000' 到 '\uffff' 。也就是说, char 类型可以表示所有的 Unicode字符,包括字母、数字、标点符号、特殊符号以及其他语言的字符。

字符串(String) 的取值范围

在Java中,字符串的最大长度取决于可用内存大小,因此没有固定的长度限制。然而, 由于内存限制,实际上可能无法创建长度超过一定阈值的字符串。

另外,值得注意的是,虽然 char 类型可以表示所有的Unicode字符,但在某些情况下,可能 需要使用 String 类型来处理字符串。例如,在字符串操作、文本解析、字符操作等方面,

String 类型经常被使用 。

整数类型:Java中的整数类型包括 byte 、 short 、 int 、 long ,其中 byte 和 short 各占用1 个字节, int 占用4个字节, long 占用8个字节。

short :取值范围通常是 -32768 到 32767。

byte :取值范围通常是 -128 到 127。

int :取值范围通常是 -2147483648 到 2147483647。

long :Java中的长整数类型是 long ,它的取值范围和int一样,但是由于它占用的字节更 多,因此能够表示的整数范围更大,取值范围通常是-9223372036854775808到

9223372036854775807。

浮点数:Java中的浮点数类型包括float和double,其中 float 占用4个字节, double 占用8个 字节。浮点数的取值范围取决于具体的类型。

float :取值范围通常是约-3.4E38到3.4E38。

double :取值范围通常是约-1.7E308到1.7E308。

BigIntenger 类型

在Java中, BigInteger 是一个任意精度的整数类型,其取值范围理论上是无限的,只要你的 计算机的内存足够大,可以有无限位的。

BigInteger 的常见用法包括:

valueOf(parament) :将参数转换为指定的类型,例如 int a = 3; , BigInteger b = BigInteger.valueOf(a); ,此时 b 的值为3 。

add() :大整数相加 。

subtract() :相减 。

multiply() :相乘 。

divide() :相除取整。

pow() :指数运算,例如 a.pow(b) = a^b; 。

remainder() :取余数 。

gcd() :求最大公约数 。

abs() :取绝对值 。

negate() :取相反数。

compareTo() :比较大小 。

equals() :判断两数是否相等。

min() :取两个数的较小值 。

max() :取两个数的较大值 。

此外, BigInteger 还支持进制转换,例如 String str = new

BigInteger("555",10).toString(2); ,这段代码将十进制的555转换为2进制 。

标签:总结,初始化,JAVA,计算机,int,数组,类型,Java,取值
From: https://www.cnblogs.com/Dogger/p/17921710.html

相关文章

  • 如何 使 Java、C# md5 加密的值保持一致
    JavaC#md5加密值保持一致,一般是编码不一致造成的值不同JAVA(加密:123456)C#(加密:123456)UTF-8e10adc3949ba59abbe56e057f20f883eUTF8e10adc3949ba59abbe56e057f20f883eUTF-16LEce0bfd15059b68d67688884d7a3d3e8cUnicodece0bfd15059b68d67688884d7a3d3e8c......
  • javaweb中的设计模式
    1.监听器基于观察者模式。1.myTestEvent自定义事件。被观察者publicclassMyTestEventextendsApplicationEvent2.MyNoAnnotationListener自定义监听器。观察者@ComponentpublicclassMyNoAnnotationListenerimplementsApplicationListener<MyTestEvent>{@Override......
  • java后端开发小技巧-集合初始化
    阅读说明:1.如果有排版格式问题,请移步https://www.yuque.com/mrhuang-ire4d/oufb8x/lu346eokyvgfao0b?singleDoc#《java后端开发小技巧-集合初始化》,选择宽屏模式效果更佳。2.本文为原创文章,转发请注明出处。后端开发中集合是经常会用到的类型。java原生的集合方法难以满足......
  • 【Java】Spring、SpringBoot、SpringCloud理解和入门
    关于Spring、SpringBoot、SpringCloud我总结了几点。Spring是轻量级的容器框架,目前大多数项目不直接使用Spring的。SpringBoot是Spring的升级版,主要应用单个微服务,关联性小的项目、规模小、硬件要求不高的项目。SpringCloud基于SpringBoot来实现微服务开发组件。主要应用于规......
  • 【Powershell】Powershell在远程计算机上执行指令
    开启并配置WinRM被远程机器执行前提:被远程的机器上开启可WinRM如果连接失败;则需要在被远程的机器上运行:Enable-PSRemoting-SkipNetworkProfileCheck-Force验证方法:WinRM处于Running状态防火墙rule处于Allow状态远程机器执行如果远程的计算机没有加入域(这里注意是执行远程指令的机......
  • 重庆大学重大计算机学院研究生毕业要求
     重庆大学计算机学院917考研交流KC群进入KC群可点击下方链接:               重庆大学计算机学院917考研交流KC群 计算机学院研究生毕业要求学术型硕士研究生:申请者满足下述条件之一。发表或录用一篇SCI期刊论文;发表或录用一篇CCF推......
  • vue3 + java 查询数据前后端时间不一致如何解决?
    环境:vue3+springboot+mybatis+mysql 场景:后端返回的时间与前端接收到的时间,小时不一致,时间格式是古巴标准时间:"CST"解决:在Entity中时间字段上增加注解:@JsonFormat(pattern="yyyy-MM-ddHH:mm:ss",timezone="GMT+8")......
  • 找到最佳优惠券组合!Java算法助力电商平台策略优化
    大家好,我是小米,一个热爱分享技术的小伙伴。最近我们电商平台迎来了一个新的需求,需要在用户下单时,高效地计算出多张平台券和店铺券的最优组合,使用户享受到最大的优惠。为了满足这一需求,我研究了一下动态规划和贪心算法,想和大家分享一下。需求背景在用户下单时,有时候我们会提供多张平......
  • 网站优化技术总结
     了解竞争对手的信息,如:收录,外链,关键词排名等。再根据自己的整合资源来制定方案。下面来分享一下网站优化步骤:步骤和方法一、关键词选取,选择关键词的基本原则:1.研究用户搜索习惯2.关键词不宜过于宽泛笼统,也不宜过于冷门3.关键词要与网站内容相关二、关键词分布1.首页:......
  • 重庆大学重大计算机考研917统考2016~2023年复试/录取情况
    重庆大学计算机学院917考研交流KC群进入KC群可点击下方链接:重大计算机考研KC群  添加图片注释,不超过140字(可选)  添加图片注释,不超过140字(可选)  添加图片注释,不超过140字(可选)  ......