c random number c random string generator with code examples
Научете как да генерирате произволно число C #, произволна азбука и произволен низ, съдържащи специални символи в този информативен урок за C # с примери за кодове:
Има сценарии, в които от нас се изисква да генерираме произволни числа, азбуки, знаци и т.н. За постигането на това имаме клас Random на разположение в системното пространство от имена.
Случайният клас ви позволява да генерирате произволно цяла стойност. Използването на този произволен клас може да генерира различен набор от числа / знаци. Ще обсъдим това по-нататък в този урок.
=> Внимавайте тук за пълната серия за обучение на C #
Какво ще научите:
- Как да генерирам произволно цяло число в C #?
- Как да генерирам произволни азбуки?
- Генерирайте произволен буквено-цифров низ със специални символи
- Заключение
Как да генерирам произволно цяло число в C #?
Случайният клас предлага три метода на претоварване за генериране на цели числа въз основа на параметъра, предоставен от потребителя. Нека разгледаме и трите метода.
Използване на C # Random.Next ()
След това съдържа три претоварвания:
Напред () Без аргумент
Първото претоварване за Random.Next () не изисква никакъв аргумент. Връща неотрицателна целочислена стойност.
Пример:
class Program { public static void Main(string() args) { Random ran = new Random(); int a = ran.Next(); Console.WriteLine('The random number generated is: {0}', a); Console.ReadLine(); } }
Резултатът от горната програма ще бъде всяка неотрицателна произволна стойност:
Изход
Генерираното произволно число е: 157909285
Напред () С един аргумент
Следващото претоварване за Random.Next () приема един аргумент. Предоставеният аргумент указва максималната стойност, която може да бъде генерирана от метода. Максималната стойност трябва да бъде или по-голяма или равна на нула. Той връща неотрицателно цяло число с максимална стойност като аргумент, предоставен от потребителя.
Пример:
class Program { public static void Main(string() args) { Random ran = new Random(); int a = ran.Next(1000); Console.WriteLine('The random number generated by Random.Next(argument) is: {0}', a); Console.ReadLine(); } }
Изходът на горната програма ще генерира цяло число, по-голямо от нула и по-малко от максималната въведена стойност, т.е. 1000.
Изход
Случайното число, генерирано от Random.Next (аргумент), е: 574
изтриване на елемент от масив java
Напред () С два аргумента
Случайният клас се използва за симулиране на случайно събитие. За да генерираме произволен знак, използваме Next (). Next () приема два аргумента, първият е минималната и включваща стойност, разрешена за произволния генератор.
Вторият аргумент приема максималната изключителна стойност. Максималната изключителна стойност означава, че стойността, предадена във втория аргумент, никога няма да бъде генерирана. Генерираната стойност винаги ще бъде по-малка от максималната стойност.
Нека да разгледаме проста програма:
class Program { public static void Main(string() args) { Random ran = new Random(); int a = ran.Next(10, 1000); Console.WriteLine('The random number generated by Random.Next(minVal, maxVal) is: {0}', a); Console.ReadLine(); } }
Изходът на горната програма ще даде стойност между дадения диапазон, т.е. между 10 и 1000, където минималната стойност, т.е. 10 е включена.
Изход
Случайното число, генерирано от Random.Next (minVal, maxVal) е: 137
В горния пример обсъдихме как да генерираме произволно цяло число. Но в случай, че искате да генерирате произволна азбука, ние ще използваме класа Random.
Как да генерирам произволни азбуки?
Можем да генерираме произволна азбука, като използваме случайния клас. Въпреки че класът Random връща само цяло число, можем да го използваме, за да генерираме произволни азбуки.
Най-лесният начин да направите това е да комбинирате метода “ElementAt” с Random.Next (), за да посочите позицията на произволна азбука от поредицата азбуки.
Пример:
class Program { public static void Main(string() args) { Random ran = new Random(); String b = 'abcdefghijklmnopqrstuvwxyz'; int length = 6; String random = ''; for(int i =0; i Резултатът от горната програма ще бъде:
Генерираната произволна азбука е: icysjd
Обяснение на кода
Подобно на предишните ни примери, тук създадохме обект Random. След това съхранихме всички азбуки в низ, т.е. String b. Дефинирахме променлива, наречена „дължина“ от цяло число, която ще обозначава броя символи, необходими в произволно генериран низ.
Инициализирахме празен низ произволно, където ще съхраняваме нашите азбуки. След това написахме цикъл for. Вътре в цикъла for използвахме Random.Next (), за да генерираме произволно число по-малко от 26, тъй като броят на азбуките, които сме съхранили в String b, е 26. Можете да използвате и други числа в зависимост от изискването.
Следователно, int a ще има произволно число, генерирано по време на всеки цикъл на цикъл, след което това число ще се използва като индикатор за позиция, за да получи характера на тази позиция, използвайки ElementAt (). Това ще даде произволен знак всеки път, когато цикълът се изпълни.
След това ще добавим символите заедно във всеки цикъл на цикъл и ще получим необходимия низ с дадената дължина.
Генерирайте произволен буквено-цифров низ със специални символи
За да се генерира буквено-цифров низ със специален символ, най-простият начин е подобен на този, който обсъдихме в горния пример. Ще трябва да добавим цифрите и специалните знаци към дадената променлива, от която тя може да избере произволни стойности.
Но тъй като програмата ще вдига произволно знаци, може да има шанс да не избере нищо. Ако изходът на вашата програма изисква да има задължителен специален символ, това е малко сложно. Нека обсъдим програма за генериране на буквено-цифров текст със задължителни специални символи.
Следващата програма ще генерира 8-цифрен произволен буквено-цифров изход с последните две цифри като специални символи.
class Program { public static void Main(string() args) { Random ran = new Random(); String b = 'abcdefghijklmnopqrstuvwxyz0123456789'; String sc = '!@#$%^&*~'; int length = 6; String random = ''; for(int i =0; i Резултатът от горната програма ще бъде:
Генерираната произволна азбука е: 718mzl ~ ^
прилагане на свързан списък в java
Обяснение на кода
В горната програма използвахме същата логика, която следвахме в последния пример. Заедно с променливата, която съдържа буквено-цифрови знаци, ние създадохме и друга променлива със специални символи.
След това пуснахме цикъл for, за да генерираме 6-цифрен буквено-цифров знак, подобен на този, който направихме в предишния ни проблем. Също така написахме друг for цикъл, който генерира 2 произволни специални знака от дадения низ. Генерираните специални символи бяха добавени със случайния низ, който декларирахме в началото на програмата.
Това даде 8 цифрен изход с 6 буквено-цифрови знака и последните два специални знака. Вие правите малко собствени промени, за да генерирате низове според вашите собствени изисквания.
Консолидирана програма
class Program { public static void Main(string() args) { Random ran = new Random(); //Output for Random.Next() Console.WriteLine('The random number generated by Random.Next() is: {0}', ran.Next()); //Output for Random.Next(argument) with max value limit Console.WriteLine('The random number generated by Random.Next(argument) is: {0}', ran.Next(10)); //Output for Random.Next(argument1, argument2) with max and min value limit Console.WriteLine('The random number generated by Random.Next(argument1, argument2) is: {0}', ran.Next(10, 100)); String b = 'abcdefghijklmnopqrstuvwxyz0123456789'; String sc = '!@#$%^&*~'; int length = 6; String random = ''; for(int i =0; i Резултатът от програмата
Случайното число, генерирано от Random.Next () е: 1497664941
Случайното число, генерирано от Random.Next (аргумент) е: 8
Случайното число, генерирано от Random.Next (аргумент1, аргумент2), е: 92
Генерираната произволна азбука е: b173gq # *
Заключение
Класът Random присъства в системното пространство на имена в C #.
Той има три метода за претоварване, които позволяват на потребителя да генерира произволно цяло число въз основа на стойностите, предоставени чрез аргумента. Случайният клас не е идеалният начин за генериране на произволна стойност, но е най-простият начин да се постигне.
=> Прочетете ръководството за начинаещи C # тук
Препоръчително четене
- Инструкция за C # String - Методи за низове с примери за кодове
- Java String с урок за String Buffer и String Builder
- C # Урок за обработка на изключения с примери за кодове
- Функции на низовете на Python
- Урок за функции / методи на C # с примери за кодове
- Създаване на макети и шпиони в Mockito с примери за кодове
- Низове в C ++ с примери
- Урок за разделяне на низове на Python