Rumah > Java > javaTutorial > Petua pengoptimuman kod dalam Java

Petua pengoptimuman kod dalam Java

WBOY
Lepaskan: 2023-06-09 09:03:18
asal
983 orang telah melayarinya

Sebagai bahasa pengaturcaraan yang popular dan digunakan secara meluas, kemahiran pengoptimuman kod Java juga merupakan salah satu fokus pembangun. Artikel ini akan memperkenalkan beberapa teknik pengoptimuman kod Java yang biasa digunakan untuk membantu meningkatkan prestasi program.

  1. Gunakan StringBuilder dan bukannya String untuk penyambungan rentetan

Di Jawa, memandangkan String tidak boleh diubah, objek String baharu akan dibuat setiap kali penyambungan rentetan dilakukan prestasi atur cara semasa melakukan pemprosesan rentetan berat. Oleh itu, kita boleh menggunakan StringBuilder, kelas rentetan berubah-ubah, untuk menggantikan String untuk penggabungan rentetan, dengan itu meningkatkan prestasi program.

Kod sampel adalah seperti berikut:

String str = "";
for(int i=0; i<1000; i++){
    str += i;
}
Salin selepas log masuk

boleh digantikan dengan:

StringBuilder sb = new StringBuilder();
for(int i=0; i<1000; i++){
    sb.append(i);
}
String str = sb.toString();
Salin selepas log masuk
  1. Nyatakan kapasiti awal apabila menggunakan kelas pengumpulan

Untuk ArrayList, Untuk kelas koleksi seperti HashMap, adalah lebih baik untuk menentukan kapasiti awal apabila menggunakannya, supaya operasi pengembangan yang kerap dapat dielakkan pada tahap tertentu. Terutama apabila bilangan elemen yang disimpan dalam koleksi adalah besar, kesan pengoptimuman ini akan menjadi lebih jelas.

Kod sampel adalah seperti berikut:

List<Integer> list = new ArrayList<>();
// 进行大量操作
list.add(1);
list.add(2);
list.add(3);
Salin selepas log masuk

boleh digantikan dengan:

List<Integer> list = new ArrayList<>(1000);
// 进行大量操作
list.add(1);
list.add(2);
list.add(3);
Salin selepas log masuk
  1. Gunakan try-catch-finally dan bukannya try-with-resources

Dalam Java 7, sintaks cuba-dengan-sumber telah diperkenalkan untuk menutup sumber secara automatik. Walau bagaimanapun, dalam beberapa kes, menggunakan try-catch-finally adalah lebih cekap.

Apabila menggunakan cuba-dengan-sumber, JVM akan mencipta blok cuba-akhir untuk setiap sumber. Oleh itu, ini boleh menyebabkan limpahan tindanan jika sejumlah besar sumber perlu diproses.

Kod sampel adalah seperti berikut:

try(InputStream in = new FileInputStream("file.txt")){
    // 处理文件流
} catch(IOException e) {
    // 异常处理
}
Salin selepas log masuk

boleh digantikan dengan:

InputStream in = null;
try{
    in = new FileInputStream("file.txt");
    // 处理文件流
} catch(IOException e) {
    // 异常处理
} finally {
    if (in != null) {
        try {
            in.close();
        } catch (IOException e) {
            // 异常处理
        }
    }
}
Salin selepas log masuk
  1. Gunakan pemalar akhir statik dan bukannya nilai berkod keras

nilai Pengekodan keras boleh membawa kepada masalah seperti kebolehbacaan yang lemah, kebolehselenggaraan yang lemah dan kod pendua. Menggunakan pemalar akhir statik boleh mengelakkan masalah ini dan meningkatkan kecekapan program.

Kod sampel adalah seperti berikut:

public static double calculateArea(double radius) {
    double pi = 3.14159265358979323846;
    return pi * radius * radius;
}
Salin selepas log masuk

boleh digantikan dengan:

public static final double PI = 3.14159265358979323846;
public static double calculateArea(double radius) {
    return PI * radius * radius;
}
Salin selepas log masuk
  1. Gunakan pembolehubah tempatan dan bukannya pembolehubah ahli

Di Java, pembolehubah Ahli boleh diakses dengan pelbagai kaedah, sekali gus meningkatkan saiz dan overhed contoh objek. Menggunakan pembolehubah tempatan boleh mengelakkan masalah ini dan meningkatkan kecekapan program.

Kod sampel adalah seperti berikut:

public class Test {
    private int num;

    public void setNum(int num) {
        this.num = num;
    }

    public void doSomething() {
        for (int i = 0; i < 1000; i++) {
            // 使用 num
        }
    }
}
Salin selepas log masuk

boleh digantikan dengan:

public class Test {
    public void setNum(int num) {
        // do something
    }

    public void doSomething() {
        int num = 0;
        for (int i = 0; i < 1000; i++) {
            // 使用 num
        }
    }
}
Salin selepas log masuk

Di atas adalah beberapa teknik pengoptimuman kod Java yang biasa digunakan. Sudah tentu, pengoptimuman kod tidak statik dan perlu dioptimumkan mengikut keadaan tertentu untuk memaksimumkan prestasi program.

Atas ialah kandungan terperinci Petua pengoptimuman kod dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan