国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

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

Java中的這些騷操作你不能不知道!!!

瀏覽:2日期:2022-08-09 08:49:05
目錄1、try with catch2、instance of3、不定項參數(shù) ...4、跳出多層循環(huán)的label5、方法引用總結(jié):1、try with catch

還記得這樣的代碼嗎?我們需要手動的關(guān)閉資源的流,不然會造成資源泄漏,因為虛擬機無法管理系統(tǒng)資源的關(guān)閉,必須手動釋放。

public void manualClose(String fileName) { BufferedReader reader = null; try { String line; reader = new BufferedReader(new FileReader(fileName)); while ((line = reader.readLine()) != null) { ... } } catch (Exception e) { ... } finally { if (reader != null) { try { reader.close(); } catch (IOException e) { ... } } }}

騷操作解救你:

public void autoClose(String fileName) { try (BufferedReader reader = new BufferedReader(new FileReader(fileName))) { String line; while ((line = reader.readLine()) != null) { ... } } catch (Exception e) { ... }}

可以看到,try-with-resources的比前一種方法明顯節(jié)省了很多代碼,資源在try后邊的()中生成,在try結(jié)束后程序會自動關(guān)閉資源。

如果需要聲明多個資源,可以在try后面的()中,以;分隔;也就是說,try后邊的()可以添加多行語句, 我上篇文章有展示:《保姆系列五》原來JavaIO如此簡單,驚呆了

2、instance of

對象是否是這個特定類或者是它的子類的一個實例,返回一個布爾值。左邊是對象,右邊是類;當對象是右邊類或子類所創(chuàng)建對象時,返回true;否則,返回false。

用法:result = object instanceof class參數(shù):Result:布爾類型。Object:必選項。任意對象表達式。Class:必選項。任意已定義的對象類。public interface Monster { } public static class Dinosaur implements Monster{ } public static void main(String[] args) { Dinosaur dinosaur = new Dinosaur(); System.out.println(dinosaur instanceof Monster); }3、不定項參數(shù) ...

格式如下:

參數(shù)個數(shù)可以0或者多個

public void method(int...args);

業(yè)務(wù)場景:

1、在業(yè)務(wù)開發(fā)的時候經(jīng)常之前寫一個方法,但是后來業(yè)務(wù)變動了,需要增加參數(shù),這個時候可以使用這種方式,多傳參數(shù),調(diào)用的地方不需要覆蓋

2、如果一個方法的的不確定參數(shù)個數(shù)的情況,通常來說我們會重載,但是如果多了很麻煩,這個時候...可以出場了

//方法重載,解決參數(shù)個數(shù)不確定問題 public void method(){}; public void method(int i){}; public void method(int i, int j){}; public void method(int i, int j, int k){};優(yōu)化之后的形式:public void method(int i,int ...args);

調(diào)用的三種方式

public void call(){ //1、 不使用變參 method(1); //2、 直接調(diào)用 method(1,2,23,4,5,6); //3、 數(shù)組調(diào)用 int[] arr = {1,2,23,4,5,6}; method(5,arr); }4、跳出多層循環(huán)的label

Java 中的標簽是為循環(huán)設(shè)計的,是為了在多重循環(huán)中方便的使用 break 和coutinue ,當在循環(huán)中使用 break 或 continue 循環(huán)時跳到指定的標簽處

public static void main(String[] args) { for (int i = 0; i < 5; i++) { labelA: for (int j = 0; j < 5; j++) { for (int k = 0; k < 5; k++) { if (k == 1) { break labelA; } System.out.println(1); } } } }

不推薦這種用法,雖然很騷,但是老老實實的一層一層break 比較好,你覺得吶?

5、方法引用

用Lambda表達式僅僅是調(diào)用一些已經(jīng)存在的方法,除了調(diào)用動作外,沒有其他任何多余的動作

Java中的這些騷操作你不能不知道!!!

package org.pdool;import java.util.ArrayList;import java.util.List;/*** 方法引用測試類* @author 香菜*/public class Trytest { static List<Player> playerList = new ArrayList<>(); // 靜態(tài)方法 public static void print(String s) { System.out.println(s); } static class Player { private String name; public Player(String name) { this.name = name; playerList.add(this); } private void printName() { System.out.println(name); } } public static void main(String[] args) { List<String> strList = new ArrayList<>(); strList.add('香菜'); strList.add('follow me'); // 1、靜態(tài)方法引用 strList.forEach(Trytest::print); // /2、對象方法引用 strList.forEach(System.out::println); // 3、構(gòu)造函數(shù) strList.forEach(Player::new); // 4、對象方法 playerList.forEach(Player::printName); }}總結(jié):

1、在try結(jié)束后程序會自動關(guān)閉資源

2、instance of 必須是子類

3、參數(shù)個數(shù)可以0或者多個,重構(gòu)代碼利器

4、使用 break 或 continue 循環(huán)時跳到指定的標簽處

5、方法調(diào)用是除了調(diào)用動作外,沒有其他任何多余的動作

本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關(guān)注好吧啦網(wǎng)的更多內(nèi)容!

標簽: Java
相關(guān)文章:
主站蜘蛛池模板: 99久久国产综合精品2020 | 久久精品国内偷自一区 | 欧洲一级毛片 | 免费国产成人高清在线观看视频 | 成人免费一区二区三区在线观看 | 久久精品视频观看 | 中文字幕在线视频网站 | 久久久久毛片免费观看 | 欧美另类videosgrstv变态 欧美另类高清xxxxx | 欧美极品在线 | 国产成视频| 亚洲第一成年网站大全亚洲 | 国产午夜免费福利红片 | 深夜福利视频大全在线观看 | 午夜一级毛片免费视频 | 好爽~好硬~好紧~蜜芽 | 日韩久久中文字幕 | 成年女人毛片免费视频永久vip | 一级片aaa | 成人网18免费网站 | 99视频免费在线 | 欧美日韩一区在线观看 | 日本伊人精品一区二区三区 | 美女张开腿给男生桶下面视频 | 男操女视频网站 | 末满18以下勿进色禁网站 | 本道久久综合88全国最大色 | 乱淫67194| 在线欧美色 | 国产香蕉在线视频一级毛片 | 曰本黄大片| 久久99国产乱子伦精品免 | 国产原创系列在线 | 日韩 欧美 国产 师生 制服 | 国产人人插 | 成人亚洲国产综合精品91 | 国产欧美日韩高清专区手机版 | 亚洲成年人网址 | 玖玖视频精品 | 成人国产网站 | 国产2区 |