JavaSystem.Getenv 方法

定义

重载

Getenv()

返回当前系统环境的不可修改的字符串映射视图。

Getenv(String)

获取指定环境变量的值。

Getenv()

返回当前系统环境的不可修改的字符串映射视图。

[Android.Runtime.Register("getenv", "()Ljava/util/Map;", "")]
public static System.Collections.Generic.IDictionary<string,string> Getenv ();
[<Android.Runtime.Register("getenv", "()Ljava/util/Map;", "")>]
static member Getenv : unit -> System.Collections.Generic.IDictionary<string, string>

返回

环境作为变量名称到值的映射

属性

注解

返回当前系统环境的不可修改的字符串映射视图。 环境是从名称到值(从父进程传递到子进程)的系统相关的映射。

如果系统不支持环境变量,则返回空映射。

返回的映射永远不会包含 null 键或值。 尝试查询是否存在 null 键或值将引发 NullPointerException。 尝试查询是否存在非 类型的 String 键或值将引发 ClassCastException

返回的映射及其集合视图可能不符合 和 Object#hashCode 方法的Object#equals常规协定。

返回的映射在所有平台上通常区分大小写。

如果存在安全管理器,则使用权限调用{@link RuntimePermission}("getenv.*")SecurityManager#checkPermission checkPermission方法。 这可能会导致 SecurityException 引发 。

将信息传递到 Java 子进程时,系统属性通常优先于环境变量。

在 1.5 中添加。

java.lang.System.getenv()Java 文档。

此页面的部分内容是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的术语使用。

适用于

Getenv(String)

获取指定环境变量的值。

[Android.Runtime.Register("getenv", "(Ljava/lang/String;)Ljava/lang/String;", "")]
public static string? Getenv (string name);
[<Android.Runtime.Register("getenv", "(Ljava/lang/String;)Ljava/lang/String;", "")>]
static member Getenv : string -> string

参数

name
String

环境变量的名称

返回

变量的字符串值;如果未在系统环境中定义变量, null 则为

属性

注解

获取指定环境变量的值。 环境变量是依赖于系统的外部命名值。

如果存在安全管理器,则使用权限调用{@link RuntimePermission}("getenv."+name)SecurityManager#checkPermission checkPermission方法。 这可能会导致 SecurityException 引发 。 如果未引发异常,则返回变量 name 的值。

“EnvironmentVSSystemProperties”><i>System properties</i> 和 <i>environment variables</i> 在概念上都是名称和值之间的映射。 这两种机制都可用于将用户定义的信息传递给 Java 进程。 环境变量具有更全局性的效果,因为它们对定义它们的进程的所有后代都可见,而不仅仅是直接的 Java 子进程。 它们在不同的操作系统上可能具有微妙的不同语义,例如不区分大小写。 出于这些原因,环境变量更有可能产生意外的副作用。 最好尽可能使用系统属性。 当需要全局效果时,或者当外部系统接口需要环境变量 ((例如 PATH) )时,应使用环境变量。

在 UNIX 系统上,的 name 字母顺序通常很重要,而在 Microsoft Windows 系统上,通常不是。 例如,表达式 System.getenv("FOO").equals(System.getenv("foo")) 在 Microsoft Windows 上可能为 true。

java.lang.System.getenv(java.lang.String)Java 文档。

此页面的部分内容是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的术语使用。

适用于