java - এলগর - জাভাতে দৈর্ঘ্য 0 দিয়ে স্ট্রিং অ্যারে কিভাবে শুরু করব?




স্ট্রাকচার সি (5)

পদ্ধতির জন্য জাভা ডক্স
String[] java.io.File.list(FilenameFilter filter)
আয় বিবরণ এই অন্তর্ভুক্ত:

ডিরেক্টরী খালি থাকলে বা ফিল্টারের দ্বারা কোন নাম গ্রহণ করা না থাকলে অ্যারের খালি হবে।

আমি একটি অনুরূপ জিনিস কিভাবে এবং দৈর্ঘ্য 0 আছে একটি স্ট্রিং অ্যারে (অথবা যে বিষয় জন্য অন্য কোন অ্যারে) আরম্ভ করবেন?


অন্যরা বলেছে,

new String[0]

প্রকৃতপক্ষে একটি খালি অ্যারে তৈরি হবে। তবে, অ্যারে সম্পর্কে একটি চমৎকার জিনিস আছে - তাদের আকার পরিবর্তন করা যাবে না, তাই আপনি সর্বদা একই খালি অ্যারে রেফারেন্স ব্যবহার করতে পারেন। সুতরাং আপনার কোড, আপনি ব্যবহার করতে পারেন:

private static final String[] EMPTY_ARRAY = new String[0];

এবং তারপরে প্রতিবার আপনার প্রয়োজন এমন EMPTY_ARRAY ফেরত EMPTY_ARRAY প্রতিটি সময় একটি নতুন বস্তু তৈরি করার প্রয়োজন নেই।


আচ্ছা আমি আসলেই উত্তরটি খুঁজে পেয়েছি কিন্তু ভেবেছিলাম আমি এভাবেই 'আমদানি' করব

String[] files = new String[0];
অথবা
int[] files = new int[0];


আপনি কি করতে হবে

String str = "";
String[] newString = new String[str.length()];

এটি একটি খালি স্ট্রিং অ্যারে দিতে হবে।

আমার ভিডিও থেকে

আপনাকে ধন্যবাদ! স্ট্রিং কিভাবে খালি হয় এবং কিভাবে এটি কাজ করে তা দেখায় এই উত্তরটি এখনও গুরুত্বপূর্ণ। উদাহরণস্বরূপ, একটি int অ্যারে কোন আকারের আকার পরিবর্তন করতে পারে না বা 0 এর পরিবর্তে অন্য আকারে পরিবর্তন করতে পারে না। একটি ArrayIndexOutOfBoundsException ত্রুটি থাকবে। স্ট্রিং এবং int মধ্যে একটি পার্থক্য অবশ্যই থাকতে হবে। তবে আবার, স্ট্রিং ডবল উদ্ধৃতি আছে এবং আকার পরিবর্তন করতে কাজ করে। অবশ্যই, এটি একটি দীর্ঘ উপায়। এটা এখনও int এবং প্রধানত স্ট্রিং মধ্যে যুক্তি দেখায়।


একটি ফাংশন তৈরি করুন যা পরিবর্তে নিল ফিরে আসবে না আপনি নীচের কোড দিয়ে যেতে পারেন একটি খালি অ্যারে ফিরে।

    public static String[] getJavaFileNameList(File inputDir) {
    String[] files = inputDir.list(new FilenameFilter() {
        @Override
        public boolean accept(File current, String name) {
            return new File(current, name).isFile() && (name.endsWith("java"));
        }
    });

    return files == null ? new String[0] : files;
}

String[] str = {};

কিন্তু

return {};

টাইপ তথ্য অনুপস্থিত হিসাবে কাজ করবে না।





initialization