Rumah > Java > javaTutorial > teks badan

Perkara Elakkan rentetan di mana jenis lain lebih sesuai

Susan Sarandon
Lepaskan: 2024-10-17 22:10:05
asal
638 orang telah melayarinya

1. Elakkan menggunakan rentetan sebagai pengganti untuk jenis data lain:

String direka bentuk untuk mewakili teks, tetapi sering disalahgunakan untuk mewakili nombor, enum atau struktur agregat.
Jika data berbentuk angka, gunakan jenis seperti int, float atau BigInteger, bukan String.

String age = "30";  // incorreto
int age = 30;       // correto

Salin selepas log masuk

2. Rentetan adalah pengganti yang lemah untuk jenis enum:

Menggunakan enum adalah lebih selamat dan lebih mudah dibaca daripada menggunakan rentetan untuk mewakili nilai terhitung.

String status = "ACTIVE";  // incorreto
Status status = Status.ACTIVE;  // correto, usando enum

Salin selepas log masuk

3. Rentetan adalah pengganti yang lebih rendah untuk jenis agregat:

Mewakili data kompleks sebagai rentetan tunggal, dipisahkan oleh pembatas, boleh menyebabkan ralat dan isu penyelenggaraan. Adalah lebih baik untuk membuat kelas untuk data ini.

Contoh salah (penggunaan rentetan untuk mewakili data agregat):

String personData = "John|Doe|30";

Salin selepas log masuk

Contoh yang betul (penggunaan kelas):

class Person {
    String firstName;
    String lastName;
    int age;

    // Construtor e métodos adequados
}

Salin selepas log masuk

4. Rentetan sebagai pengganti sumber (Contoh: pembolehubah setempat utas):

Menggunakan rentetan untuk mengenal pasti sumber sebagai pembolehubah setempat benang boleh membawa kepada isu keselamatan dan perlanggaran nama. Gantikan dengan kunci yang lebih selamat.

Contoh yang salah (penggunaan rentetan untuk mengenal pasti pembolehubah setempat benang):

Map<String, Object> threadLocalVariables = new HashMap<>();
threadLocalVariables.put("myVariable", value);

Salin selepas log masuk

Contoh yang betul (penggunaan kunci selamat):

class Key {
    // implementação da chave
}

Map<Key, Object> threadLocalVariables = new HashMap<>();
Key key = new Key();
threadLocalVariables.put(key, value);

Salin selepas log masuk

Penggunaan ThreadLocal yang betul:

Reka bentuk yang ideal untuk pembolehubah tempatan utas melibatkan penggunaan ThreadLocal, yang membolehkan penciptaan pembolehubah yang dikaitkan dengan setiap urutan dengan cara yang selamat jenis.

Contoh penggunaan ThreadLocal yang betul:

private static final ThreadLocal<Integer> threadId = ThreadLocal.withInitial(() -> 0);

public static void main(String[] args) {
    System.out.println(threadId.get());  // obtem o valor da variável local da thread
}

Salin selepas log masuk

Kesimpulan:

Elakkan godaan untuk menggunakan rentetan untuk segala-galanya. Menggunakan jenis data yang lebih sesuai atau mencipta jenis baharu menghalang ralat, meningkatkan kebolehbacaan dan menjadikan kod lebih cekap dan selamat.

Contoh daripada buku:

Item  Evite as strings onde outros tipos forem mais adequados

Item  Evite as strings onde outros tipos forem mais adequados

Atas ialah kandungan terperinci Perkara Elakkan rentetan di mana jenis lain lebih sesuai. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan