Nova的科學反主流學院 

反主流的精神在於不屈於大環境, 本站旨在提供輕鬆自學各種科學。

Java9 新特性 JShell

 

JShell/Kulla 項目是第一個官方的Java REPL

(Read-Eval-Print-Loop的縮寫,即交互式編程環境)

類似python的解釋器,會一直讀取值,輸入完後,印出對應的結果。

 

目錄

一、一般計算
二、建立function 
三、印字串、完整的單行程式可省略分號 
四、網路連線

 

一、一般計算 

 

1.開啟命令提示字元
開始 > 執行 > 輸入cmd > 確定

2.輸入

"C:\Program Files\Java\jdk-9\bin\jshell"

必須包含引號,否則program和file中間有空白,會無法判斷為完整路徑!

出現

|  Welcome to JShell -- Version 9-ea
|  For an introduction type: /help intro


jshell>

就代表成功進入

 

3.我們可以隨意輸入算式,如 1 + 2 按下enter就可以得到回傳值 3

$1的意思是他存在 $1 的變數

jshell> 1+2
$1 ==> 3

 

4.每次計算以後會自動加1

所以第二次回傳存在 $2 的變數 

jshell> 1+2*3
$2 ==> 7

 

5.回傳的變數還可以取用,

舉例:

$3 + 2,因為 $3 的變數存放是 3 ,所以這式子就等於3 + 2,所以回傳 5

$4 + 1,因為 $4 的變數存放是 5 ,所以這式子就等於5 + 1,所以回傳 6

jshell> 1+2
$3 ==> 3

jshell> $3+2
$4 ==> 5

jshell> $4+1
$5 ==> 6

 

範例圖

 

二、建立function

接著以上的例子,

我們輸入

int add(int a, int b) {

按Enter

  return a+b;

按Enter 

}

按Enter

會自動跳出

|  created method add(int,int)

代表 function 已建立完成

這時候就可以使用該 function:

比如說輸入

add(25, $1)

按Enter

結果如下圖($1在之前的步驟存的是3,所以這邊讀出來加上25是28)

 

三、印字串、完整的單行程式可省略分號 

可輸入以下指令:

System.out.println("Hello world!")

和平常一樣印字串可以作用,特點是可省略分號一樣有效 

 

 

四、網路連線

可依序輸入以下指令:  

System.out.println("Hello world!")

URL obj = new URL("https://www.google.com/")

URLConnection con = obj.openConnection()

我們就能夠取得Http Header 欄位的資料 

 

 

更多功能可輸入

/help

查詢