Was diesmal zu schreiben:
Die Eigenschaftendatei zur Eingabe von Schlüsseln und Werten in Hashtable usw.
temp.properties
key1 = value1
key2 = value2
key3 = value3
key4 = value4
test.properties
key11 = value11
key12 = value12
key13 = value13
enumeration_sample.properties
key1 = Java
key2 = JavaScript
key3 = Scala
key4 = Python2
key5 = Python3
verwenden.
Eine Klasse, die eine Hash-Tabelle implementiert. Diese Klasse stammt aus Java 1.0 und ist immer noch eine aktive (?) Klasse, wie der Vorfahr von ConcurrentHashMap. Hash-Tabellen werden als assoziative Arrays bezeichnet und lassen sich gut mit Hash-Maps mischen. Den Unterschied zwischen der Hash-Tabelle und der Hash-Map finden Sie unter dem folgenden Link.
Der Punkt ist, dass HashMap HashMap und Hashtable Hashtable ist.
Im folgenden Beispiel wird die Eigenschaft standardmäßig im Voraus festgelegt, in Hashtable kopiert, die Eigenschaft, die Sie festlegen möchten, wird festgelegt, und die Eigenschaft wird neu mit Hashtable festgelegt, einer Kopie der Standardeigenschaft. Programm zum Importieren.
HashtableSample.java
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Hashtable;
import java.util.Properties;
public class HashtableSample {
@SuppressWarnings("unchecked")
public static void main(String[] args) throws FileNotFoundException, IOException {
Hashtable<String, String> hashTable = new Hashtable<String, String>();
Properties properties = new Properties();
properties.load(new FileInputStream("./Property/temp.properties"));
hashTable = (Hashtable<String, String>) properties.clone();
System.out.println("Default Property: " + properties);
properties.load(new FileInputStream("./Property/test.properties"));
properties.putAll(hashTable);
System.out.println("Second Property: " + properties);
if(properties.containsKey("key4")){
System.out.println("key4 is exist.");
} else {
System.out.println("key4 isn't exist.");
}
}
}
Ergebnis ist
Default Property: {key4=value4, key3=value3, key2=value2, key1=value1}
key13 isn't exist.
Second Property: {key13=value13, key12=value12, key11=value11, key4=value4, key3=value3, key2=value2, key1=value1}
key13 is exist.
Wird sein. Hier gibt key13 einen Schlüssel an, der nicht der Standard ist.
Eine in der Map-Schnittstelle definierte Methode, die bestimmt, ob sich der durch das Argument angegebene Schlüssel in Hashtable befindet. Gibt true zurück, wenn Hashtable diesen Schlüssel hat.
Eine in der Map-Oberfläche definierte Methode, die alle Argumentzuordnungen nach Hashtable kopiert.
Da die Properties-Klasse von der Hashtable-Klasse erbt, können Hashtable-Methoden verwendet werden.
Dies ist ebenfalls aus Java 1.0 und ähnelt dem Vorfahren von Iterator. Die Operation ist die gleiche wie bei Iterator. Warum dann nicht Iterator verwenden? Ich denke, aber das ist nicht der Fall. Einige Klassen verfügen über Methoden, die einen Aufzählungstyp zurückgeben (java.util.Hashtable # elements (), java.util.Hashtable # keys (), java.util.Properties # propertyNames () usw.). Sie müssen sie daher ordnungsgemäß verwenden.
Das folgende Beispiel ist ein Programm, das eine Liste von Eigenschaftsschlüsseln in den Aufzählungstyp einfügt, nach dem Wert dieses Schlüssels sucht und ihn an die Konsole ausgibt.
EnumerationSample.java
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Enumeration;
import java.util.Properties;
public class EnumerationSample {
public static void main(String[] args) throws FileNotFoundException, IOException{
Properties properties = new Properties();
properties.load(new FileInputStream("./Property/enumration_sample.properties"));
for(Enumeration<Object> enumeration = properties.keys(); enumeration.hasMoreElements();){
String name = (String) enumeration.nextElement();
System.out.println(properties.getProperty(name));
}
}
}
Ergebnis ist
Python3
Python2
Scala
JavaScript
Java
Wird sein.
Eine in der Aufzählungsschnittstelle definierte Methode. Diese Methode bestimmt, ob die Aufzählung die folgenden Elemente enthält: Gibt true zurück, wenn die folgende Methode vorhanden ist.
Eine in der Aufzählungsschnittstelle definierte Methode. Eine Methode, die das nächste Element zurückgibt, wenn die Aufzählung ein oder mehrere Elemente enthält. Gibt NoSuchElementException zurück, wenn keine weiteren Elemente vorhanden sind.