亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中System.in的作用是什么

發布時間:2021-06-09 17:53:24 來源:億速云 閱讀:191 作者:Leah 欄目:編程語言

本篇文章給大家分享的是有關Java中System.in的作用是什么,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
public class Cat {
  public static void main(String[] args) throws IOException {
    //是否顯示行號,使用參數 -n 啟用
    boolean showNumber = args.length > 0 && Arrays.asList(args).contains("-n");
    int num = 0;
    BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
    String line = reader.readLine();
    while (line != null) {
      if (showNumber) {
        num++;
        System.out.printf("%1$8s %2$s%n", num, line);
      } else {
        System.out.println(line);
      }
      line = reader.readLine();
    }
  }
}

這個方法中用到了參數,參數只用于判斷是否存在-n這個參數,沒有通過參數指定文件。

這里獲取文件內容的方式就是 System.in,從輸入流中讀取。輸入流中怎么提供文件內容呢?

就是通過輸入重定向到命令。針對上面的 Cat.java 文件執行下面的命令:

javac Cat.java
java Cat -n < Cat.java

先使用 javac 編譯,在通過 java 命令執行,通過輸入重定向將Cat.java 作為命令的輸入流。

上面命令執行后,輸出內容如下:

 import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.InputStreamReader;
 import java.util.Arrays;
 public class Cat {
   public static void main(String[] args) throws IOException {
     boolean showNumber = args.length > 0 && Arrays.asList(args).contains("-n");
     int num = 0;
     BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
     String line = reader.readLine();
     while (line != null) {
       if (showNumber) {
         num++;
         System.out.printf("%1$8s %2$s%n", num, line);
       } else {
         System.out.println(line);
       }
       line = reader.readLine();
     }
   }
 }

如果只是處理文件,和參數方式指定文件路徑沒太大的區別。但是如果通過管道方式,就可以很方便的將前面命令的輸出流作為輸入流繼續進行處理。例如下面的命令:

java Cat -n < Cat.java | java Cat -n

前一個命令的輸出會作為第二個命令的輸入,這會在原有行號的基礎上增加一個行號,結果如下:

 import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.InputStreamReader;
 import java.util.Arrays;
 public class Cat {
   public static void main(String[] args) throws IOException {
     boolean showNumber = args.length > 0 && Arrays.asList(args).contains("-n");
     int num = 0;
     BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
     String line = reader.readLine();
     while (line != null) {
       if (showNumber) {
        num++;
         System.out.printf("%1$8s %2$s%n", num, line);
       } else {
         System.out.println(line);
       }
       line = reader.readLine();
     }
   }
 }

以上就是Java中System.in的作用是什么,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

买车| 梁山县| 孝昌县| 台安县| 南丰县| 太白县| 凤冈县| 宾阳县| 常山县| 偏关县| 江口县| 晋中市| 宜州市| 龙胜| 嘉定区| 元阳县| 鹤岗市| 师宗县| 赤峰市| 铜鼓县| 盐源县| 青海省| 搜索| 清苑县| 焦作市| 武城县| 岳阳县| 青岛市| 乐业县| 呼和浩特市| 高唐县| 沽源县| 佛坪县| 郸城县| 云林县| 岑溪市| 农安县| 石棉县| 定州市| 华容县| 武安市|