import java.util.*;
import javax.swing.*;
public class alphanumeric{
public static void main(String args[]){
String nval,lenval;
int n,len;
nval=JOptionPane.showInputDialog("Enter number of codes you require : ");
n=Integer.parseInt(nval);
lenval=JOptionPane.showInputDialog("Enter code length you require : ");
len=Integer.parseInt(lenval);
find(n,len);
}
public static void find(int n,int length) {
String str1="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
StringBuilder sb=new StringBuilder(length);
Random r = new Random();
System.out.println("\n\t Unique codes are \n\n");
for(int i=0;i<n;i++){
for(int j=0;j<length;j++){
sb.append(str1.charAt(r.nextInt(str1.length())));
}
System.out.println(" "+sb.toString());
sb.delete(0,length);
}
}
}
Существует полное объяснение использования «статического» свойства здесь Microsoft.
В опыте веб-фреймворка (например, для этого .NET Core) мы используем статическое объявление для примитивных значений, которые НЕ потребуют никаких изменений.
Метод, который не обращается к каким-либо экземплярам данных, должен быть помечен как static
: https://docs.microsoft.com/en-us/visualstudio/code-quality/ca1822-mark-members- as-static? view = vs-2017 Он может быть объявлен как метод private
в зависимости от использования.
Если метод получает доступ к каким-либо данным экземпляра, он не может быть статичным. Компилятор обеспечивает это.
Типичными примерами статических методов являются, например, String.Format
и Int32.Parse
. Нет смысла выделять string
или int
перед вызовом этих методов.