亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java動(dòng)態(tài)數(shù)組Arraylist存放自定義數(shù)據(jù)類型方式

 更新時(shí)間:2021年10月27日 10:31:44   作者:「已注銷」  
這篇文章主要介紹了Java動(dòng)態(tài)數(shù)組Arraylist存放自定義數(shù)據(jù)類型方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Java動(dòng)態(tài)數(shù)組Arraylist存放自定義數(shù)據(jù)類型

class Point
{
 int x;
 int y;
 public Point(int x,int y)
 {
  this.x=x;
  this.y=y;
 }
}
public class Test {
 public static void main(String[] args)  {
  // TODO Auto-generated method stub
  ArrayList<Point> myPoint=new ArrayList<Point>();
  Point temp=new Point(5,10);
  myPoint.add(temp);
  **Point p = (Point)myPoint.get(0);**
  System.out.println("x的值為:"+p.x);
  System.out.println("y的值為:"+p.y);
 }
}

測(cè)試結(jié)果

ArrayList可以存放任何對(duì)象的引用;其是有序的可重復(fù)的;取出時(shí)是Object對(duì)象,需要強(qiáng)制轉(zhuǎn)化

自定義一個(gè)動(dòng)態(tài)數(shù)組ArrayList,加深對(duì)動(dòng)態(tài)數(shù)組的理解

動(dòng)態(tài)數(shù)組主要用來(lái)保存多個(gè)相同類型的數(shù)據(jù)

主要做添加

添加:首先判斷定義的數(shù)組長(zhǎng)度是否小于等于原有空間,當(dāng)滿足這個(gè)條件時(shí),就創(chuàng)建一個(gè)新的長(zhǎng)度變量newlength等于它原有的長(zhǎng)度加上原有的長(zhǎng)度右移一位(位移比除法的運(yùn)算速度快)。定義一個(gè)新數(shù)組newinformation存放數(shù)據(jù),用System.arraycopy進(jìn)行拷貝,將原有數(shù)組數(shù)據(jù)拷貝到新數(shù)組。

代碼如下:

在這里插入圖片描述

測(cè)試結(jié)果:

在這里插入圖片描述

  • 獲取get():直接判斷下標(biāo)是否超過(guò)數(shù)組長(zhǎng)度,如果超過(guò)就拋出下標(biāo)越界異常。然后直接根據(jù)下標(biāo)返回該數(shù)組對(duì)應(yīng)的值。

代碼如下:

在這里插入圖片描述

測(cè)試結(jié)果:

在這里插入圖片描述

  • 改set():首先依舊判斷下標(biāo)是否越界,直接根據(jù)下標(biāo)給對(duì)應(yīng)數(shù)組data[index]把t的值賦給它.

代碼如下:

在這里插入圖片描述

測(cè)試結(jié)果如下:

在這里插入圖片描述

  • 刪除remove():首先還是判斷下標(biāo)是否越界,定義一個(gè)T類型的r把要?jiǎng)h除的對(duì)應(yīng)下標(biāo)數(shù)組的值賦值給它。然后判斷下標(biāo)加1是否等于原有空間大小,在不等于的情況下,把它要?jiǎng)h除下標(biāo)的后一個(gè)值傳給要?jiǎng)h除下標(biāo)的值,以此類推。把數(shù)據(jù)最后一位的值定義為空null.最后返回刪除的值。

代碼如下:

在這里插入圖片描述

測(cè)試結(jié)果如下:因?yàn)閯h除了兩次,所以顯示的4

在這里插入圖片描述

  • 獲取數(shù)組長(zhǎng)度size():直接用return返回this.size的值

代碼如下:

在這里插入圖片描述

測(cè)試結(jié)果如下:

在這里插入圖片描述

  • 清空clear():把原有數(shù)組定義為初始值10,長(zhǎng)度改為初始值0

代碼如下:

在這里插入圖片描述

總結(jié):如何存儲(chǔ)數(shù)據(jù)是最基本的操作,我們應(yīng)該多加練習(xí)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • jQuery 動(dòng)畫效果代碼分享

    jQuery 動(dòng)畫效果代碼分享

    本文給大家分享一段關(guān)于jquery實(shí)現(xiàn)的動(dòng)畫效果,代碼簡(jiǎn)單易懂,非常不錯(cuò),感興趣的朋友參考下
    2016-11-11
  • 深入淺析Mybatis與Hibernate的區(qū)別與用途

    深入淺析Mybatis與Hibernate的區(qū)別與用途

    這篇文章主要介紹了Mybatis與Hibernate的區(qū)別與用途的相關(guān)資料,需要的朋友可以參考下
    2017-10-10
  • java中駝峰與下劃線的寫法互轉(zhuǎn)

    java中駝峰與下劃線的寫法互轉(zhuǎn)

    這篇文章主要介紹了java中駝峰與下橫線的寫法互轉(zhuǎn)方法,文中先是進(jìn)行了簡(jiǎn)單的介紹,之后跟大家分享了一個(gè)自己編寫的工具類的示例代碼,有需要的朋友可以參考借鑒,下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-01-01
  • 29個(gè)要點(diǎn)幫你完成java代碼優(yōu)化

    29個(gè)要點(diǎn)幫你完成java代碼優(yōu)化

    本文給大家分享的是個(gè)人總結(jié)的29個(gè)java優(yōu)化需要注意的地方,非常的全面細(xì)致,推薦給大家,有需要的小伙伴可以參考下
    2015-03-03
  • Java String不可變性實(shí)現(xiàn)原理解析

    Java String不可變性實(shí)現(xiàn)原理解析

    這篇文章主要介紹了Java String不可變性實(shí)現(xiàn)原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • 詳解Java設(shè)計(jì)模式編程中命令模式的項(xiàng)目結(jié)構(gòu)實(shí)現(xiàn)

    詳解Java設(shè)計(jì)模式編程中命令模式的項(xiàng)目結(jié)構(gòu)實(shí)現(xiàn)

    這篇文章主要介紹了Java設(shè)計(jì)模式編程中命令模式的項(xiàng)目結(jié)構(gòu)實(shí)現(xiàn),命令模式將請(qǐng)求與執(zhí)行分離,可以多個(gè)命令接口的實(shí)現(xiàn)類,隱藏真實(shí)的被調(diào)用方,需要的朋友可以參考下
    2016-04-04
  • springboot?vue接口測(cè)試定義編輯功能的實(shí)現(xiàn)

    springboot?vue接口測(cè)試定義編輯功能的實(shí)現(xiàn)

    這篇文章主要為大家介紹了springboot?vue接口測(cè)試定義編輯功能的實(shí)現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • 淺析 ArrayList 和 LinkedList 有什么區(qū)別

    淺析 ArrayList 和 LinkedList 有什么區(qū)別

    ArrayList 和 LinkedList 有什么區(qū)別,是面試官非常喜歡問(wèn)的一個(gè)問(wèn)題。今天通過(guò)本文給大家詳細(xì)介紹下,感興趣的朋友跟隨小編一起看看吧
    2020-10-10
  • Mybatis環(huán)境搭建及文件配置過(guò)程解析

    Mybatis環(huán)境搭建及文件配置過(guò)程解析

    這篇文章主要介紹了Mybatis環(huán)境搭建及文件配置過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Redis實(shí)現(xiàn)延遲隊(duì)列的全流程詳解

    Redis實(shí)現(xiàn)延遲隊(duì)列的全流程詳解

    Redisson是Redis服務(wù)器上的分布式可伸縮Java數(shù)據(jù)結(jié)構(gòu),這篇文中主要為大家介紹了Redisson實(shí)現(xiàn)的優(yōu)雅的延遲隊(duì)列的方法,需要的可以參考一下
    2023-03-03

最新評(píng)論