Java - 属性类


Java - 属性类

Properties是Hashtable的子类。它用于维护键的列表,其中键是String,值也是String。

许多其他Java类使用Properties类。例如,它是获取环境值时System.getProperties()返回的对象类型。

属性定义以下实例变量。此变量包含与Properties对象关联的默认属性列表。

Properties defaults;

以下是属性类提供的构造函数列表。

Sr.No. 构造函数和描述
1

Properties( )

此构造函数创建一个没有默认值的Properties对象。

2

Properties(Properties propDefault)

创建一个使用propDefault作为其默认值的对象。在这两种情况下,属性列表都是空的。

除了Hashtable定义的方法外,Properties还定义了以下方法

Sr.No. 方法和描述
1

String getProperty(String key)

返回与键关联的值。如果密钥既不在列表中也不在默认属性列表中,则返回null对象。

2

String getProperty(String key,String defaultProperty)

返回与键关联的值; 如果密钥既不在列表中也不在默认属性列表中,则返回defaultProperty。

3

void list(PrintStream streamOut)

将属性列表发送到链接到streamOut的输出流。

4

void list(PrintWriter streamOut)

将属性列表发送到链接到streamOut的输出流。

void load(InputStream streamIn)抛出IOException

从链接到streamIn的输入流输入属性列表。

6

Enumeration propertyNames( )

返回键的枚举。这包括默认属性列表中的那些键。

7

Object setProperty(String key,String value)

将价值与关键相关联。返回与键关联的先前值,如果不存在此类关联,则返回null。

8

void store(OutputStream streamOut,String description)

在写入由description指定的字符串之后,属性列表将写入链接到streamOut的输出流。

实例

以下程序说明了此数据结构支持的几种方法

import java.util.*;
public class PropDemo {

   public static void main(String args[]) {
      Properties capitals = new Properties();
      Set states;
      String str;

      capitals.put("Illinois", "Springfield");
      capitals.put("Missouri", "Jefferson City");
      capitals.put("Washington", "Olympia");
      capitals.put("California", "Sacramento");
      capitals.put("Indiana", "Indianapolis");

      // Show all states and capitals in hashtable.
      states = capitals.keySet();   // get set-view of keys
      Iterator itr = states.iterator();

      while(itr.hasNext()) {
         str = (String) itr.next();
         System.out.println("The capital of " + str + " is " +
            capitals.getProperty(str) + ".");
      }     
      System.out.println();

      // look for state not in list -- specify default
      str = capitals.getProperty("Florida", "Not Found");
      System.out.println("The capital of Florida is " + str + ".");
   }
}

这将产生以下结果

输出

The capital of Missouri is Jefferson City.
The capital of Illinois is Springfield.
The capital of Indiana is Indianapolis.
The capital of California is Sacramento.
The capital of Washington is Olympia.

The capital of Florida is Not Found.