2012-02-27 79 views
-3

我已经将一个现有项目导入Eclipse工作区。 我在现有的项目中有这行代码。通过Properties类读取属性值

String eod = Props.getProperty("client.eod", 5); 

此调用中参数5的确切含义是什么? 我的猜测是,如果没有名称为client.eod的属性,它是否会将值5设置为它。任何人都可以证实或反驳它吗?

+1

这可以在Java文档很容易被发现。 – sgowd 2012-02-27 09:24:54

+0

通过说这是你的意思是财产或字符串对象? – 2012-02-27 09:28:31

回答

1

是的,你说的没错。但它是getProperty(String, String)

String eod = Props.getProperty("client.eod", "5"); 
1

好了,docs说,方法签名

public String getProperty(String key, String defaultValue) 

因此,第二个参数是默认值;该文档还补充说,

该方法返回默认值参数,如果该属性不是 找到。

所以它按照你的想象工作。

-1
String eod = Props.getProperty("client.eod", 5); 
    System.out.println("eod: "+eod); 

雅这将设置为5

的client.eod如果该值未在属性中定义的文件,那么它设置默认值。

所以它使输出如下

eod:5 
+0

仅当props文件中没有名为“client.eod”的属性时,答案将为“5”。并不总是返回“5”。 – sgowd 2012-02-27 09:28:31

+0

我知道。如果值没有在属性文件中定义,那么它会设置默认值。我想我已经提到它。它的默认参数。 – Suresh 2012-02-27 09:32:01

+0

请相应更新您的答案。 – sgowd 2012-02-27 09:33:13