كيفية إنشاء سلسلة عشوائية من الأحرف الأبجدية الرقمية في Java؟
مرحبًا بالجميع! أكتب تطبيقًا صغيرًا لتوليد كلمات المرور والمعرفات المؤقتة. أحتاج إلى إنشاء سلاسل عشوائية تحتوي فقط على أحرف لاتينية (a-z, A-Z) وأرقام (0-9). على سبيل المثال، شيء مثل "k3R9tB2x" أو "A7fD1qP8".
لقد جربت استخدام UUID، لكنه ينتج سلاسل بشرطات لا أحتاجها. حاولت كتابة منطق خاص بي باستخدام Math.random()، لكن الكود أصبح ضخمًا وغير موثوق — أحيانًا ينتج أحرفًا فقط أو أرقامًا فقط. إليك ما كتبته:
```java
String generateRandomString(int length) {
String chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
StringBuilder sb = new StringBuilder();
for (int i = 0; i < length; i++) {
int index = (int)(Math.random() * chars.length());
sb.append(chars.charAt(index));
}
return sb.toString();
}
```
هذا يعمل، لكنني لست متأكدًا من صحته من حيث الأداء والأمان. هل هناك أدوات مدمجة في Java لهذا؟