⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 map.java

📁 A Map implemented with ArrayLists
💻 JAVA
字号:
//: c11:SlowMap.java 
// A Map implemented with ArrayLists. 
import com.bruceeckel.simpletest.*; 
import java.util.*; 
import com.bruceeckel.util.*; 
public class SlowMap extends AbstractMap { 
private static Test monitor = new Test( ); 
private List 
keys = new ArrayList( ), 
values = new ArrayList( ); 
public Object put(Object key, Object value) { 
Object result = get(key); 
if(!keys.contains(key)) { 
keys.add(key); 
values.add(value); 
} else 
values.set(keys.indexOf(key), value); 
return result; 
} 
public Object get(Object key) { 
if(!keys.contains(key)) 
return null; 
return values.get(keys.indexOf(key)); 
} 
public Set entrySet( ) { 
Set entries = new HashSet( ); 
Iterator 
ki = keys.iterator( ), 
vi = values.iterator( ); 
while(ki.hasNext( )) 
entries.add(new MPair(ki.next( ), vi.next( ))); 
return entries; 
} 
public String toString( ) { 
StringBuffer s = new StringBuffer("{"); 
Iterator 
ki = keys.iterator( ), 
vi = values.iterator( ); 
while(ki.hasNext( )) { 
s.append(ki.next( ) + "=" + vi.next( )); 
if(ki.hasNext( )) s.append(", "); 
} 
s.append("}"); 
return s.toString( ); 
} 
public static void main(String[] args) { 
SlowMap m = new SlowMap( ); 
Collections2.fill(m, Collections2.geography, 15); 
System.out.println(m); 
monitor.expect(new String[] { 
"{ALGERIA=Algiers, ANGOLA=Luanda, BENIN=Porto- 
Novo,"+ 
" BOTSWANA=Gaberone, BURKINA FASO=Ouagadougou, 
" + 
"BURUNDI=Bujumbura, CAMEROON=Yaounde, " + 
"CAPE VERDE=Praia, CENTRAL AFRICAN 
REPUBLIC=Bangui,"+ 
" CHAD=N'djamena, COMOROS=Moroni, " + 
"CONGO=Brazzaville, DJIBOUTI=Dijibouti, " + 
"EGYPT=Cairo, EQUATORIAL GUINEA=Malabo}" 
}); 
} 
} ///:~ 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -