Java 教程

Java 控制语句

面向对象编程

Java 内置类

Java 文件处理

Java 错误和异常

Java 多线程

Java 同步

Java 网络编程

Java 集合

Java 接口

Java 数据结构

Java 集合算法

高级 Java

Java 杂项

Java API 和框架

Java 类引用

Java 有用资源

Java - Properties 类



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

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

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

Properties defaults;

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

序号 构造函数和说明
1

Properties()

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

2

Properties(Properties propDefault)

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

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

序号 方法和说明
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 链接的输出流。

5

void load(InputStream streamIn) throws IOException

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

6

Enumeration propertyNames()

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

7

Object setProperty(String key, String value)

将 value 与 key 关联。返回以前与 key 关联的值,如果不存在这样的关联,则返回 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.
java_data_structures.htm
广告