Java - a classe de propriedades

Propriedades é uma subclasse de Hashtable. É usado para manter listas de valores em que a chave é uma String e o valor também é uma String.

A classe Properties é usada por muitas outras classes Java. Por exemplo, é o tipo de objeto retornado por System.getProperties () ao obter valores ambientais.

As propriedades definem a seguinte variável de instância. Esta variável contém uma lista de propriedades padrão associada a um objeto Propriedades.

Properties defaults;

A seguir está a lista de construtores fornecida pela classe de propriedades.

Sr. Não. Construtor e descrição
1

Properties( )

Este construtor cria um objeto Properties que não possui valores padrão.

2

Properties(Properties propDefault)

Cria um objeto que usa propDefault para seus valores padrão. Em ambos os casos, a lista de propriedades está vazia.

Além dos métodos definidos por Hashtable, Propriedades definem os seguintes métodos -

Sr. Não. Método e Descrição
1

String getProperty(String key)

Retorna o valor associado à chave. Um objeto nulo é retornado se a chave não estiver na lista nem na lista de propriedades padrão.

2

String getProperty(String key, String defaultProperty)

Retorna o valor associado à chave; defaultProperty será retornado se a chave não estiver na lista nem na lista de propriedades padrão.

3

void list(PrintStream streamOut)

Envia a lista de propriedades para o fluxo de saída vinculado a streamOut.

4

void list(PrintWriter streamOut)

Envia a lista de propriedades para o fluxo de saída vinculado a streamOut.

5

void load(InputStream streamIn) throws IOException

Insere uma lista de propriedades do fluxo de entrada vinculado a streamIn.

6

Enumeration propertyNames( )

Retorna uma enumeração das chaves. Isso inclui também as chaves encontradas na lista de propriedades padrão.

7

Object setProperty(String key, String value)

Associa o valor à chave. Retorna o valor anterior associado à chave ou retorna nulo se essa associação não existir.

8

void store(OutputStream streamOut, String description)

Depois de escrever a string especificada por description, a lista de propriedades é gravada no fluxo de saída vinculado a streamOut.

Exemplo

O programa a seguir ilustra vários dos métodos suportados por esta estrutura de dados -

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 + ".");
   }
}

Isso produzirá o seguinte resultado -

Resultado

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.