2011-01-27 8 views
38

मेरे पास String[] है जिसमें कम से कम 2 तत्व हैं।जावा: क्या सरणी का सबसेट चुनने का कोई आसान तरीका है?

मैं एक नया String[] बनाना चाहता हूं जिसमें शेष 1 के माध्यम से तत्व 1 है। तो .. मूल रूप से, बस पहले को छोड़ना।

क्या यह एक पंक्ति में किया जा सकता है? आसानी से?

उत्तर

81
Arrays.copyOfRange(array, 1, array.length); 

copyOfRange जावा 1.6 में जोड़ा गया है। अपने नहीं हैं, तो ऊपर-टू-डेट उस के साथ, आप का उपयोग कर सकते हैं:

  • ArrayUtils.subarray(array, 1, array.length) अपाचे commons-lang से
  • System.arraycopy(..) - बल्कि लंबे परम सूची के साथ अमित्र।
+7

अंत सूचकांक अनन्य –

+0

हाँ है। तर्क – Bozho

+0

के विपरीत प्रतीक्षा करें, तो क्या इसका मतलब है कि मुझे .length के लिए +1 की आवश्यकता है? – NullVoxPopuli

12
String[] subset = Arrays.copyOfRange(originalArray, 1, originalArray.length); 

भी देखें:

0

स्ट्रीम एपीआई भी इस्तेमाल किया जा सकता:

String[] array = {"A", "B"}; 

Arrays.stream(array).skip(1).toArray(String[]::new); 
संबंधित मुद्दे

 संबंधित मुद्दे