【Java】何为JShell?——有趣的Java学习小工具

前言 :上一篇中我们已经看到了如何编译和运行一个Java程序。Java1.9(即Java9)中引入了另一种使用Java的方式。JShell(Java Shell) 程序提供了一个"读取-计算-打印循环"(Read-Evaluate-Print Loop,REPL)。当你键入一个Java表达式;JShell会评估你的输入,打印结果,等待你的下一个输入。

因为我们已经在环境变量中将Path路径配置好了,JShell工具就包含在我们我们的bin目录下:

不懂如何配置环境变量的小伙伴可移步上一篇内容:【Java】基本概念全概述------新手入门必看

因此要启动JShell ,只需要在终端窗口中键入jshell,如图:(注意大小写!)

JShell首先向你显示一个问候语,后面是一个提示符:

| 欢迎使用 JShell -- 版本 17.0.11
| 要大致了解该版本, 请键入: /help intro

jshell>

现在我们键入一个表达式,如下:

"Core Java".length()

JShell会回应一个结果------在这里就是字符串**"Core Java"中**的字符个数。

$1 ==> 9

注意,你并没有键入System.out.println。JShell会自动打印你输入的每一个表达式的值。

输出中的$1表示整个结果可以用于将来的计算。例如:如果你键入:

5*$1-3

就会得到:

$2 ==> 42

如果需要多次使用一个变量,可以给它指定一个容易记忆的名字。不过,一定要遵循Java语法,需要同时指定类型的变量名。例如:

这里我们就成功定义了一个变量answer。

JShell另一个有用的特性是"tab补全",如果键入**Math.**然后再按一次Tab键。你会得到可以在generator变量上调用所有方法的一个列表:

接着现在键入l,然后再按一次Tab键。方法名会补全为log,现在你会得到一个比较小的列表:

接下来你可以手工填入其余的部分:

要重复运行一个命令,可以连续按 "⬆"键,直到看到想要重新运行或编辑的命令行,可以用⬅和➡键移动命令行中的光标位置,然后增加或删除字符。编辑完命令后再按回车。例如,把命令行中的0.001替换为1000,然后按回车:

总结:

JShell 会让Java语言和类库的学习变得轻松而有趣,它不要求你启动一个庞大的开发环境,不会让你再为public static void main而困扰。

相关推荐
正经人_x9 分钟前
学习日记43:FINO
学习
l1564694820 分钟前
突围!图文混合知识库难以解析,Kimi-K3 原生视觉架构深耕知识工作,DMXAPI 统一接口,缩短项目开发周期
java·大数据·开发语言
charlie11451419144 分钟前
现代C++工程实践 WeakPtr 实战(三):WeakPtrFactory 与「最后成员」惯用法
开发语言·c++·开源项目·现代c++
布吉岛的石头1 小时前
Java 程序员第 45 阶段11:网关统一路由大模型接口,配合 Nacos 配置治理,灰度路由:基于Nacos元数据实现大模型服务灰度发布与权重路由
java·服务发现
我命由我123452 小时前
Android 开发问题:Cannot resolve method ‘repeat‘ in ‘String‘
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
IT小盘2 小时前
04-大模型流式输出原理-SSE与Python实现
开发语言·网络·人工智能·python
baozhengw2 小时前
信创改造-SpringBootJar包改为WAR包部署Tomcat
java·tomcat
网络工程小王2 小时前
【HCIE-AI】11.模型 昇腾迁移适配-精度调试-性能调优
人工智能·学习·华为·迁移学习·昇腾
不如语冰2 小时前
AI大模型入门-Python进阶-上下文管理与with语句
开发语言·数据结构·数据库·人工智能·pytorch·redis·python
M1A12 小时前
基于 Spring AOP 构建系统操作日志:从注解设计到异步落库的完整实战
java