电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

Java方法及數(shù)組相關(guān)原理解析

瀏覽:14日期:2022-08-19 15:57:36

方法

設(shè)計(jì)方法的原則:方法的本意是功能塊,就是實(shí)現(xiàn)某個(gè)功能的語句塊的集合。我們?cè)O(shè)計(jì)的方法,最好保持方法的原子性,就是一個(gè)方法只完成1個(gè)功能,有利于后期的擴(kuò)展。

方法重載

重載就是在一個(gè)類中,有相同的函數(shù)名稱,但參數(shù)不同的函數(shù)

重載規(guī)則:

方法名稱必須相同 參數(shù)列表必須不同(個(gè)數(shù)不同、類型不同、參數(shù)排序順序不同) 方法返回值類型可相同也可不相同 僅僅返回類型不同不足以成為方法的重載

實(shí)現(xiàn)原理:

方法名稱相同時(shí),編譯器會(huì)根據(jù)調(diào)用方法的參數(shù)個(gè)數(shù)、參數(shù)類型等去逐個(gè)匹配,以選擇對(duì)應(yīng)的方法,如果匹配失敗,則編譯器報(bào)錯(cuò)。

命令行傳參

public static void main(String[] args) { for (int i=0;i<args.length;i++){ System.out.println('args['+i+']:'+args[i]); } }//傳遞命令行參數(shù)給main函數(shù)

要在 cmd 界面下才能運(yùn)行!!!

可變參數(shù)

JDK 1.5開始,Java支持傳遞同類型的可變參數(shù)給一個(gè)方法。

在方法聲明中,在指定參數(shù)類型后加一個(gè)省略號(hào)(..)。

一個(gè)方法中只能指定一個(gè)可變參數(shù),它必須是方法的最后一個(gè)參數(shù)。任何普通的參數(shù)必須在它之前聲明。

public static void main(String[] args) { //調(diào)用 printMax(34,3,3,2,56.5); printMax(new double[]{1,2,3}); } public static void printMax(double... numbers){//可變參數(shù) if (numbers.length==0){ System.out.println('No argument passed'); return; } double result=numbers[0]; //排序 for (int i = 1; i < numbers.length; i++) { if(numbers[i]>result){result=numbers[i]; } } System.out.println('The max value is '+result); }

遞歸

A方法調(diào)用A方法!自己調(diào)用自己!

遞歸結(jié)構(gòu)包括兩個(gè)部分:

遞歸頭:什么時(shí)候不調(diào)用自身方法。如果沒有頭,將陷入死循環(huán)。

遞歸體:什么時(shí)候需要調(diào)用自身方法

public static int f(int n){ if(n==1){ return 1; }else { return n*f(n-1); } }

數(shù)組

數(shù)組是相同類型數(shù)據(jù)的有序集合.

數(shù)組描述的是相同類型的若干個(gè)數(shù)據(jù),按照一定的先后次序排列組合而成。

其中,每一個(gè)數(shù)據(jù)稱作一個(gè)數(shù)組元素,每個(gè)數(shù)組元素可以通過一個(gè)下標(biāo)來訪問它們.

數(shù)組的聲明

int[] nums=new int[5];nums[0]=1;nums[1]=2;nums[2]=3;nums[3]=4;nums[4]=5;

數(shù)組的三種初始化

//1靜態(tài)初始化int[] a={1,2,3,4,5,6,7,8};System.out.println(a[0]);

//2動(dòng)態(tài)初始化 :包含3默認(rèn)初始化int[] b=new int[10];b[0]=10;b[1]=10;System.out.println(b[0]);System.out.println(b[1]);System.out.println(b[2]);//默認(rèn)初始化,輸出結(jié)果為0

數(shù)組的四個(gè)基本特點(diǎn)

其長(zhǎng)度是確定的。數(shù)組一旦被創(chuàng)建,它的大小就是不可以改變的。 其元素必須是相同類型,不允許出現(xiàn)混合類型。 數(shù)組中的元素可以是任何數(shù)據(jù)類型,包括基本類型和引用類型。 數(shù)組變量屬引用類型,數(shù)組也可以看成是對(duì)象,數(shù)組中的每個(gè)元素相當(dāng)于該對(duì)象的成員變量。數(shù)組本身就是對(duì)象,Java中對(duì)象是在堆中的,因此數(shù)組無論保存原始類型還是其他對(duì)象類型,數(shù)組對(duì)象本身是在堆中的。

數(shù)組邊界

數(shù)組的應(yīng)用

//反轉(zhuǎn)數(shù)組public static int[] reverse(int[] arrays){ int[] result = new int[arrays.length]; for (int i = 0,j=result.length-1; i <arrays.length ; i++,j--) { result[j]=arrays[i]; } return result; }

多維數(shù)組

int a[][]=new int[2][5];//以上二維數(shù)組可以看成一個(gè)兩行五列的數(shù)組

Array類

查看 JDK 幫組文檔!!!

常用功能:

給數(shù)組賦值:fill

給數(shù)組排序:sort

比較數(shù)組:equals 比較數(shù)組中元素值是否相等

查找數(shù)組元素:binarySearch 方法能對(duì)排序好的數(shù)組進(jìn)行二分查找法操作

冒泡排序

public static int[] sort(int[] array){// 冒泡排序 int temp=0; for (int i = 0; i < array.length-1; i++) { for (int j = 0; j < array.length-1-i; j++) {//i表示已經(jīng)排好的數(shù)字個(gè)數(shù),所以在內(nèi)層循環(huán)時(shí)減去i,減少比較次數(shù)if(array[j+1]<array[j]){ temp=array[j]; array[j]=array[j+1]; array[j+1]=temp;} } } return array; }

稀疏數(shù)組

稀疏數(shù)組的處理方式是:

記錄數(shù)組一共有幾行幾列,有多少個(gè)不同值

把具有不同值的元素和行列及值記錄在一個(gè)小規(guī)模的數(shù)組中,從而縮小程序的規(guī)模

//看代碼才能看懂 public static void main(String[] args) { //稀疏數(shù)組 int[][] array1=new int[11][11]; array1[1][2]=1; array1[2][3]=2; System.out.println('輸出原始數(shù)據(jù):'); for (int[] ints:array1) { for(int anint:ints){System.out.print(anint+'t');//輸出原始數(shù)組 } System.out.println(); } System.out.println('================'); //轉(zhuǎn)換為稀疏數(shù)組 //獲取數(shù)組中有效值 int sum= 0; for (int i = 0; i < 11; i++) { for (int j = 0; j < 11; j++) {if(array1[i][j]!=0){ sum++;} } } System.out.println('有效值個(gè)數(shù):'+sum); //創(chuàng)建稀疏數(shù)組 int[][] array2=new int[sum+1][3]; array2[0][0]=11; array2[0][1]=11; array2[0][2]=sum; //遍歷二維數(shù)組,將有效值存在稀疏數(shù)組中 int count=0; for (int i = 0; i < array1.length; i++) { for (int j = 0; j < array1[i].length; j++) {//二維數(shù)組每一行的長(zhǎng)度//形成稀疏數(shù)組if(array1[i][j]!=0){ count++; array2[count][0]=i; array2[count][1]=j; array2[count][2]=array1[i][j];} } } //輸出稀疏數(shù)組 System.out.println('稀疏數(shù)組'); for (int i = 0; i < array2.length; i++) { System.out.println(array2[i][0]+'t' +array2[i][1]+'t' +array2[i][2]+'t'); } System.out.println('================'); System.out.println('還原'); int[][] array3=new int[array2[0][0]][array2[0][1]]; //還原值 for (int i = 1; i < array2.length; i++) { //在還原數(shù)組中將坐標(biāo)與值相對(duì)應(yīng) array3[array2[i][0]][array2[i][1]]=array2[i][2]; } //打印輸出 System.out.println('輸出還原數(shù)組:'); for (int[] ints:array3) { for(int anint:ints){System.out.print(anint+'t');//輸出還原數(shù)組 } System.out.println(); } }

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 定制异形重型钢格栅板/钢格板_定做踏步板/排水沟盖板_钢格栅板批发厂家-河北圣墨金属制品有限公司 | 无刷电机_直流无刷电机_行星减速机-佛山市藤尺机电设备有限公司 无菌检查集菌仪,微生物限度仪器-苏州长留仪器百科 | 安全光栅|射频导纳物位开关|音叉料位计|雷达液位计|两级跑偏开关|双向拉绳开关-山东卓信机械有限公司 | 月嫂_保姆_育婴_催乳_母婴护理_产后康复_养老护理-吉祥到家家政 硫酸亚铁-聚合硫酸铁-除氟除磷剂-复合碳源-污水处理药剂厂家—长隆科技 | 橡胶接头|可曲挠橡胶接头|橡胶软接头安装使用教程-上海松夏官方网站 | 广州展览设计公司_展台设计搭建_展位设计装修公司-众派展览装饰 广州展览制作工厂—[优简]直营展台制作工厂_展会搭建资质齐全 | 南京蜂窝纸箱_南京木托盘_南京纸托盘-南京博恒包装有限公司 | 房车价格_依维柯/大通/东风御风/福特全顺/江铃图片_云梯搬家车厂家-程力专用汽车股份有限公司 | 泥沙分离_泥沙分离设备_泥砂分离机_洛阳隆中重工机械有限公司 | 手持气象站_便携式气象站_农业气象站_负氧离子监测站-山东万象环境 | 伸缩器_伸缩接头_传力接头-巩义市润达管道设备制造有限公司 | 展厅设计公司,展厅公司,展厅设计,展厅施工,展厅装修,企业展厅,展馆设计公司-深圳广州展厅设计公司 | PSI渗透压仪,TPS酸度计,美国CHAI PCR仪,渗透压仪厂家_价格,微生物快速检测仪-华泰和合(北京)商贸有限公司 | 升降炉_真空气氛炉_管式电阻炉厂家-山东中辰电炉有限公司 | ETFE膜结构_PTFE膜结构_空间钢结构_膜结构_张拉膜_浙江萬豪空间结构集团有限公司 | 小型高低温循环试验箱-可程式高低温湿热交变试验箱-东莞市拓德环境测试设备有限公司 | 两头忙,井下装载机,伸缩臂装载机,30装载机/铲车,50装载机/铲车厂家_价格-莱州巨浪机械有限公司 | 气象监测系统_气象传感器_微型气象仪_气象环境监测仪-山东风途物联网 | 北京遮阳网-防尘盖土网-盖土草坪-迷彩网-防尘网生产厂家-京兴科技 | 河南档案架,档案密集架,手动密集架,河南密集架批发/报价 | 阳光1号桔柚_无核沃柑_柑橘新品种枝条苗木批发 - 苧金网 | 特种阀门-调节阀门-高温熔盐阀-镍合金截止阀-钛阀门-高温阀门-高性能蝶阀-蒙乃尔合金阀门-福建捷斯特阀门制造有限公司 | sus630/303cu不锈钢棒,440C/430F/17-4ph不锈钢研磨棒-江苏德镍金属科技有限公司 | 交变/复合盐雾试验箱-高低温冲击试验箱_安奈设备产品供应杭州/江苏南京/安徽马鞍山合肥等全国各地 | 北京晚会活动策划|北京节目录制后期剪辑|北京演播厅出租租赁-北京龙视星光文化传媒有限公司 | 无水硫酸铝,硫酸铝厂家-淄博双赢新材料科技有限公司 | 气力输送设备_料封泵_仓泵_散装机_气化板_压力释放阀-河南锐驰机械设备有限公司 | 浙江工业冷却塔-菱电冷却塔厂家 - 浙江菱电冷却设备有限公司 | 机器视觉检测系统-视觉检测系统-机器视觉系统-ccd检测系统-视觉控制器-视控一体机 -海克易邦 | 蒸汽热收缩机_蒸汽发生器_塑封机_包膜机_封切收缩机_热收缩包装机_真空机_全自动打包机_捆扎机_封箱机-东莞市中堡智能科技有限公司 | 蜂窝块状沸石分子筛-吸附脱硫分子筛-萍乡市捷龙环保科技有限公司 | 环讯传媒,永康网络公司,永康网站建设,永康小程序开发制作,永康网站制作,武义网页设计,金华地区网站SEO优化推广 - 永康市环讯电子商务有限公司 | 郑州大巴车出租|中巴车租赁|旅游大巴租车|包车|郑州旅游大巴车租赁有限公司 | 欧美日韩国产一区二区三区不_久久久久国产精品无码不卡_亚洲欧洲美洲无码精品AV_精品一区美女视频_日韩黄色性爱一级视频_日本五十路人妻斩_国产99视频免费精品是看4_亚洲中文字幕无码一二三四区_国产小萍萍挤奶喷奶水_亚洲另类精品无码在线一区 | 硅PU球场、篮球场地面施工「水性、环保、弹性」硅PU材料生产厂家-广东中星体育公司 | 电子元器件呆滞料_元器件临期库存清仓尾料_尾料优选现货采购处理交易商城 | 岩棉切条机厂家_玻璃棉裁条机_水泥基保温板设备-廊坊鹏恒机械 | 环氧铁红防锈漆_环氧漆_无溶剂环氧涂料_环氧防腐漆-华川涂料 | 东莞市天进机械有限公司-钉箱机-粘箱机-糊箱机-打钉机认准东莞天进机械-厂家直供更放心! | 沥青灌缝机_路面灌缝机_道路灌缝机_沥青灌缝机厂家_济宁萨奥机械有限公司 | 武汉高低温试验箱_恒温恒湿试验箱厂家-武汉蓝锐环境科技有限公司 |