27 lines
1.3 KiB
Markdown
27 lines
1.3 KiB
Markdown
# JavaClasses
|
|
|
|
[](https://sonarqube.mattrixwv.com/dashboard?id=JavaClasses)
|
|
|
|
This is a set of classes and functions, not part of the standard library, that I have found it helpful to keep around.
|
|
|
|
## Stopwatch
|
|
|
|
This is a class that allows you to determine the execution time of an algorithm.
|
|
You can get specific resolutions of time through their own get functions, all of which return double.
|
|
However I have built it a function, getStr(), that automatically chooses the best resolution and returns both the number and resolution as a string.
|
|
|
|
```Java
|
|
Stopwatch timer = new Stopwatch();
|
|
timer.start();
|
|
//Code to time here
|
|
timer.stop();
|
|
System.out.printf("It took %s to run this algorithm", timer.getStr());
|
|
//You could also do something like this if you prefered
|
|
System.out.printf("It took %f milliseconds to run this algorithm", timer.getMilli());
|
|
```
|
|
|
|
## Algorithms
|
|
|
|
This is a class that contains many different algorithms that I have found it useful to keep around. This is used extensively in my [Project Euler](https://git.mattrixwv.com/ProjectEuler/ProjectEulerJava) project.
|
|
All methods are overloaded to allow for using Integer, Long, and BigInteger types.
|