我正在使用for循環將「m」添加到字符串數組,然後將每個字符串傳遞給DDE連接以下載股票報價。Java循環無法正確創建字符串
String[] symbols = {"AUDUSD", "EURUSD", "GBPUSD", "USDJPY"};
String ibfxSym[] = new String[symbols.length];
for(int i = 0; i<symbols.length;i++) {
ibfxSym[i] = symbols[i] + "m";
}
// start DDE
for (int i = 0; i < connections.length; i++) {
try {
connections[i].getQuote(ibfxSym[i]);
} catch (Exception e) {
System.out.println("error");
}
這並不工作,但如果我在傳遞:
String[] ibfxSym = {"AUDUSDm", "EURUSDm", "GBPUSDm", "USDJPYm"};
,而不是循環它工作得很好。我試過打印每個字符串,因爲它是在循環中創建的,它們看起來是一樣的。有沒有一些奇怪的格式,循環添加,我看不到?我甚至嘗試過:
ibfxSym[i] = String.valueOf(ibfxSym[i].trim());
看看是否有可能是一個回車或東西被附加,我看不到。任何有關這裏發生了什麼問題的想法? 謝謝。
你說,在循環後,該ibfxSym []數組不包含什麼你以爲會呢?除了getQuote(ibfxSym [i])外,不應該有任何回車符被追加,並且代碼似乎是正確的 - 是與數組大小相同的連接數? – Kylar 2011-01-13 19:00:22
你確定`connections.length`與`ibfxSym.length`相同嗎? – Jeremy 2011-01-13 19:00:32
「這不起作用」可能更具體。 – 2011-01-13 19:03:10