2015-08-20 73 views
0

樣品輸入#1給定數量n作爲輸入,返回長度爲n的新字符串數組,含有字符串 「0」, 「1」, 「2」 等,直到n-1個

make(4) 

樣本輸出#1

{"0","1","2","3"}  


public class StringArrayOfNumbers { 

static int testcase1 = 10; 

public static void main(String args[]){ 
    StringArrayOfNumbers testInstance = new StringArrayOfNumbers(); 
    String[] result = testInstance.make(testcase1); 
    System.out.println(result); 
} 

public String[] make(int num){ 

    int n=0; 
    String n1="n"; 
    String[] arr=new String[num]; 
    for(int i=0;i<num;i++){ 
     arr[i]=n1; 
     n=n+1; 
    } 
    return arr; 
} 

}

,當我試圖運行的代碼只打印4次N,如何初始化該n?也沒有使用任何字符串庫函數?

測試用例通過/失敗參數的實際輸出的預期輸出

1失敗 '5'{ 'N', 'N', 'N', 'N', 'N'} { '0','1 」, '2', '3', '4'}

回答

3

n1String其具有在它的值爲 「n」。

n是一個變量,其值從0變到num - 1。你可能想分配n而不是n1

int n=0; 
String[] arr=new String[num]; 
for(int i = 0; i < num; i++){ 
    arr[i]= n; 
     n = n + 1; 
    } 

如果你仔細觀察,ni具有相同的價值,你不需要太n

String[] arr=new String[num]; 
for(int i = 0; i < num; i++){ 
    arr[i] = i; 
} 
0

我不知道你在問什麼,但結果應該是這樣的:

public String[] make(int num) { 

    int n = 0; 
    //String n1 = "n"; 
    String[] arr = new String[num]; 
    for (int i = 0; i < num; i++) { 
     arr[i] = String.valueOf(n); 
     n = n + 1; 
    } 
    return arr; 
    } 
+0

是你的代碼給了我想要的輸出,但我們可以做到這一點,而無需使用任何字符串的方法一樣的價值。 –

+0

@Uma描述了最佳解決方案 –

相關問題