您的位置 首页 > 数码极客

[如何构建一个类元素]如何构建一个品牌…

前言

我们讲到了一维数组和二维数组以及开发工具eclipse的配置

java.u 类能方便地操作数组,它提供的所有方法都是静态的。

具有以下功能:

  • 替换元素以及填充元素:通过 fill 方法。
  • 对数组排序:通过 sort 方法,按升序。
  • 比较数组:通过 equals 方法比较数组中元素值是否相等。
  • 查找数组元素:通过 binarySearch 方法能对排序好的数组进行二分查找法操作。

Arrays类

Arrays类是 Java中用来操作数组 的模块他的使用方法是在Java类中使用 import java.u 进行导入,并使用 Arrays.方法() 进行调用方法!

Arrays类的fill方法

fill方法有两种用途!

第一种就是填充数组,将数组中的全部元素转换为所输入的元素

第二种就是替换数组元素,将数组中某个元素进行单个替换

用fill方法填充数组

在初始化一个数组之后,如果没有给数组的元素赋值,那么这个数组中的 元素默认是为0 的,那么我们 一个个进行赋值又会略显麻烦,会堆积代码 !所以我们就需要用到 fill方法进行填充, 但是这么做 会让全部元素变成同一个数值!

<pre class="prettyprint hljs java" style="padding: 0.5em; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; color: rgb(68, 68, 68); border-radius: 4px; display: block; margin: 0px 0px 1.5em; font-size: 14px; line-height: 1.5em; word-break: break-all; overflow-wrap: break-word; white-space: pre; background-color: rgb(246, 246, 246); border: none; overflow-x: auto; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">import java.u; //这里导入Arrays类 public class Fill{ public static void main(String[] args){ int[] mylist = new int[5]; //这里创建一个名称为mylist的数组,数组的元素个个数为5 Arrays.fill(mylist,3); //为数组填充3,格式为fill(列表,数值) for(int x:mylist){ Sy(x); } //通过for each来遍历数组元素 } }

用fill方法替换数组元素

在给元素 赋值完或者是填充完元素 之后,如果想 对某个元素进行修改 ,那么我们就要 重新赋值或者是替换元素 ,但是 重新赋值会增加代码 ,让代码显得更繁琐,所以 Arrays类中提供了替换元素的方法fill!

<pre class="prettyprint hljs java" style="padding: 0.5em; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; color: rgb(68, 68, 68); border-radius: 4px; display: block; margin: 0px 0px 1.5em; font-size: 14px; line-height: 1.5em; word-break: break-all; overflow-wrap: break-word; white-space: pre; background-color: rgb(246, 246, 246); border: none; overflow-x: auto; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">import java.u; public class Fill{ public static void main(String[] args){ int[] mylist = {1,2,3,4}; Arrays.fill(mylist, 1,2,4); for(int x:mylist){ Sy(x); } } //这是一个特殊的格式Arrays.fill(列表名称,空格正向索引,反向索引,改变的数值) }

这里的正反向索引指向的一定要是同一个元素!

Arrays类的复制数组方法

在Java程序的使用过程中,有时候会需要一个 含有相同或者是部分相同元素的数组 ,但是 重新创建数组的话就会增加代码长度,减少代码可读性 ,那么我们就可以使用到 复制数组或者是部分数组的方法!

用copyOf复制数组

☄️copyOf方法提供了 多种重载的方法 , 用以复制数组,增加代码可读性 。该方法 不受数组长度的限制,若超出,则多处部分为0!

<pre class="prettyprint hljs cs" style="padding: 0.5em; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; color: rgb(68, 68, 68); border-radius: 4px; display: block; margin: 0px 0px 1.5em; font-size: 14px; line-height: 1.5em; word-break: break-all; overflow-wrap: break-word; white-space: pre; background-color: rgb(246, 246, 246); border: none; overflow-x: auto; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">import java.u; public class Fill{ public static void main(String[] args){ int[] mylist = {1,2,3,4}; int[] justlist = Arrays.copyOf(mylist,4); //将复制后的数组赋值给justlist //格式Arrays.copyOf(列表,复制后的长度) for(int x:justlist){ Sy(x); } Sy(mylist); Sy(justlist); //这里输出两个数组的内存空间进行检查 } //这是一个特殊的格式Arrays.fill(列表名称,空格正向索引,反向索引,改变的数值) }

解:从以上结果可以看出 赋值成功了,并且内存空间不同 ( 下面我会解释为什么要输出内存空间 )

用copyOfRange方法复制部分数组

有时候在 编辑代码的时候只需要中间一部分代码 ,但是 copyOf方法只能复制以前面部分为开头的元素,而不能直接复制中间的代码 ,为了解决这一个问题,这个类提供了 另一个方法copyOfRange方法(中文意思:选择复制)利用这个方法就可以解决这一个问题 !

<pre class="prettyprint hljs java" style="padding: 0.5em; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; color: rgb(68, 68, 68); border-radius: 4px; display: block; margin: 0px 0px 1.5em; font-size: 14px; line-height: 1.5em; word-break: break-all; overflow-wrap: break-word; white-space: pre; background-color: rgb(246, 246, 246); border: none; overflow-x: auto; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">import java.u; public class Fill{ public static void main(String[] args){ int[] mylist = {1,2,3,4}; int[] justlist = Arrays.copyOfRange(mylist,1,3); //Arrays类的方法使用形式Arrays.copyOfRange(列表,第一个索引位置,第二个索引位置) for(int x:justlist){ Sy(x); } } }

注:在末尾有问题解答!

Arrays类对数组进行排序

在代码编译过程中,有时候会需要用到 有序的一组数组才能进行更好的操作 ,但是我们重新进行编译会增加代码数量,所以我们要对代码进行排序, Java中提供了sort方法对数组的元素进行升序排序!

用sort方法进行升序排序

在Java编译过程中, 有顺序的数组会让你的编译更加方便,使得你自己以及其他参与编译的人更加清楚,尤其是适合那些大基数的数组更为适用和实用 !

<pre class="prettyprint hljs java" style="padding: 0.5em; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; color: rgb(68, 68, 68); border-radius: 4px; display: block; margin: 0px 0px 1.5em; font-size: 14px; line-height: 1.5em; word-break: break-all; overflow-wrap: break-word; white-space: pre; background-color: rgb(246, 246, 246); border: none; overflow-x: auto; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">import java.u; public class Fill{ public static void main(String[] args){ int[] mylist = {1,7,33,4}; Arrays.sort(mylist); //方式为Arrays.sort(列表) for(int x:mylist){ Sy(x); } } }

问题解答

  • 为什么要在fill方法中加空格:因为不加空格就会使他执行不正确,无法达到效果
  • 为什么要输出内存空间吗:如果在同一个内存空间,一个数组改变之后另一个也会随之改变,会影响后续程序执行
  • copyOfRange方法如果超出索引最大限度会怎么样:如果超出,则超出部分默认为0!
  • 为什么有些要方法要创建新数组有些不用:因为有些方法是对一个数组进行改变,有些是要重新创建数组!

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“如何构建一个类元素,如何构建一个品牌,如何构建一个网站,如何构建一个世界,如何构建一个团队”边界阅读