200 次浏览
如果有两个嵌套循环,可以使用 break 语句:break 2; 下面是 foreach 循环的示例:foreach(...) { foreach(...) { if (my_var_1.name == my_var_2) break 2; //它会跳出最外层的 foreach 循环 } } 对于 PHP 版本 >= 5.3,可以使用以下代码:foreach (...) { foreach (...) { if (my_var_1.name == my_var_2) goto top; } } top
66 次浏览
JShell 是 Java 9 中引入的官方读取-求值-打印-循环 (REPL) 工具。它提供了一个交互式 shell,用于快速原型设计、调试和学习 Java 和 Java API,无需 main() 方法。JShell 中的“/list”命令会打印出该特定会话中先前键入的所有代码片段,这些代码片段具有唯一的标识符,称为代码片段 ID。默认情况下,输出不包含任何只有有效语句或表达式的代码片段。如果需要查看所有先前键入的代码(包括错误),则需要向 /list 命令传递 -all 参数。在下面的代码片段中,我们创建了…… 阅读更多
245 次浏览
垃圾收集(简称 GC)是 Java 内存管理的核心部分。它负责清除内存中的死对象并回收该空间。GC 使用预定义的垃圾收集器执行清理,这些垃圾收集器使用某些算法。以下列出了一些重要的垃圾收集器类型:串行 GC:单线程收集器,适用于数据使用量较小的小型应用程序。可以通过指定命令行选项启用它:-XX:+UseSerialGC。并行 GC:并行 GC 使用多个线程执行垃圾收集过程,也称为吞吐量收集器。可以通过显式指定选项启用它:-XX:+UseParallelGC。G1 垃圾优先:G1(垃圾优先)…… 阅读更多
298 次浏览
Java 9 引入了一个名为 JShell 的交互式 REPL 命令行工具。它允许我们执行 Java 代码片段并立即获得结果。我们可以导入可以通过类路径从 JShell 会话访问的外部类。Gson 库是一个 Java 序列化/反序列化库,用于将 Java 对象转换为 JSON,反之亦然。在下面的代码片段中,我们可以在 JShell 中设置类路径:jshell> /env --class-path C:\Users\User\gson.jar | 设置新的选项并恢复状态。一旦我们在 JShell 中导入了 gson 库,就可以在列表中看到该库。jshell> import com.google.gson.* jshell> /import | import java.io.* | import java.math.* | ... 阅读更多
199 次浏览
REPL 代表读取-求值-打印-循环。它包含一些状态,JShell 中的每个语句都有一个状态。此状态会拒绝代码片段和变量的执行状态。这可以通过 JShell 实例的 eval() 方法的结果来确定,该方法会评估代码。以下列出了七个不同的状态。已放弃:代码片段处于非活动状态。不存在:代码片段处于非活动状态,因为它尚不存在。已覆盖:代码片段处于非活动状态,因为它已被新的代码片段替换。可恢复已定义:代码片段是声明代码片段,其主体中可能包含可恢复的未解析引用或其他问题。可恢复未定义:代码片段是声明代码片段,…… 阅读更多
81 次浏览
Java Shell(简称 JShell)是一个用于学习 Java 和制作 Java 代码原型的交互式 REPL 工具。它会根据输入来评估声明、语句和表达式,并立即显示结果,它从命令行运行。封装是 Java 中的一个重要概念,它可以确保“敏感”数据对用户隐藏。为此,我们必须将类变量声明为私有变量,并提供公共的 get 和 set 方法来访问和更新私有变量的值。在下面的代码片段中,我们为 Employee 类实现了封装概念。jshell> class Employee { ...> private String firstName; ...> ... 阅读更多
175 次浏览
在 Java 9 中,引入了一项名为“多发行版 jar 格式”的新功能,其中 jar 格式增强了可以根据平台维护和使用的不同版本的 Java 类或资源。可以使用 jar 命令创建一个多发行版 jar,其中包含针对 Java 8 和 Java 9 版本编译的同一类的两个版本,并带有警告消息,说明这两个类是相同的。C:\Users\User\tutorialspoint>jar --create --file MR.jar -C sampleproject-base demo --release 9 -C sampleproject-9 demo 警告:条目 META-INF/versions/9/demo/SampleClass.class 包含一个与 jar 中已有的条目相同的类。“ --release 9”选项可以告诉 jar…… 阅读更多
121 次浏览
JShell 是作为 Java 9 的一部分引入的第一个 REPL(读取-求值-打印-循环)交互式工具。它会根据输入来评估声明、语句和表达式,并立即显示结果,它从命令行提示符运行。回文字符串是指反转后保持不变的字符串,或者正反拼写方式相同的单词。在下面的示例中,我们可以在 JShell 工具中检查给定的字符串是否为回文。C:\Users\User>jshell | 欢迎使用 JShell -- 版本 9.0.4 | 要查看介绍,请键入:/help intro jshell> String str="LEVEL"; str ==> "LEVEL" jshell> ... 阅读更多
94 次浏览
在 Java 9 中,可以通过本地调用检索进程的 PID,并且可以通过 ProcessHandle 实现。我们还可以检索有关当前正在运行的 Java 进程(JVM)的信息和包含进程详细信息的 Info(ProcessHandle 的内部类)。我们还可以返回系统中所有当前正在运行的进程的快照。示例import java.lang.ProcessHandle.Info; public class ProcessAPIChanges { public void detailedAPIInfo(ProcessHandle processHandle) { Info processInfo = processHandle.info(); System.out.println("下面提供了详细的进程信息:"); System.out.println("[可执行文件名] " + processInfo.command().get()); System.out.println("[用户名] " + ... 阅读更多
140 次浏览
JShell 是一个交互式工具,用于学习 Java 语言和原型设计 Java 代码。它是一个 REPL(读取-求值-打印-循环)工具,它在输入声明、语句和表达式后立即进行求值,并在 JShell 中立即打印结果。此工具从命令行提示符运行。像 public、protected、private、static 和 final 这样的修饰符不允许在顶级声明中使用,可以忽略并显示警告。像 synchronized、native、abstract 和 default 这样的顶级方法关键字不允许使用,并可能导致错误。在下面的代码片段中,我们创建了 final 和 static 变量。它会向用户打印一条警告消息:“不允许使用修饰符 'final' 或 'static' ... 阅读更多