मैं जावा फ्रेशर साक्षात्कार कोडिंग उदाहरणों के लिए अभ्यास कर रहा हूं। मैं 1
से N
के बीच डुप्लिकेट संख्याओं को खोजने के लिए एक प्रोग्राम लिखने की कोशिश कर रहा हूं, जहां उपयोगकर्ता को नंबरों के साथ स्वयं को दिया जाता है।OutOfMemoryError: जावा हेप स्पेस एक सरणी में 5 इंच पढ़ने की कोशिश करते समय
import java.io.DataInputStream;
import java.io.IOException;
public class DuplicateNumbers {
public static void main(String[] args) throws IOException {
DataInputStream in = new DataInputStream(System.in);
System.out.println(" Enter the number of numbers ");
int a = in.readInt();
int[] num = new int[a];
System.out.println(" Enter the ints one by one ");
for (int b = 0; b < a; b++) {
System.out.println(" Enter no "+(b+1));
num[b]=in.readInt();
}
int c = 0;
for (int d = 0; d < a; d++) {
int f = 0;
c = num[d];
for (int e=0; e<a; e++) {
if (c==num[e]) {
f++;
}
}
if(f > 1)
System.out.println(" Duplicate number "+c);
}
}
}
लेकिन मैं ग्रहण नियॉन में निम्न त्रुटि हो रही है:
Enter the number of numbers
5
Exception in thread "main" java.lang.OutOfMemoryError:
Java heap space at DuplicateNumbers.main(DuplicateNumbers.java:14)
क्या गलत है यहाँ कोड है? JVM ढेर अंतरिक्ष त्रुटि क्यों? कोड संकलित करता है और ठीक चलाता है।
यह ** नहीं ** * "ठीक चलाने" करता है *, यही वजह है कि तुम यहाँ अपवाद के बारे में पूछ रहे हैं ठीक है, ... यह लाइन पर क्रैश हो रहा है:
यहाँ एक बुनियादी उदाहरण है 'int [] num = new int [a]; 'क्या आपने ब्रेकपॉइंट जोड़ने और कोड को डीबग करने का प्रयास किया है? – luk2302
आपने डेटा इनपुट को पढ़ा था कि उपयोगकर्ता इनपुट कैसे पढ़ा जाए? –
नहीं सर, मैं किसी के कोड की प्रतिलिपि बनाने की कोशिश नहीं कर रहा हूं। मेरे पास अभ्यास करने के लिए कार्यक्रमों की एक सूची है, जहां मैं अपने आप को कोड करने का प्रयास करता हूं, और जब मैं तर्क और धैर्य से बाहर निकलता हूं, तो मैं मदद मांगता हूं। –