Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def printSystemProp() {
- val sysProp = JavaConverters.propertiesAsScalaMap(System.getProperties)
- val (maxKeyLength, avgValueLength) = {
- val info = sysProp.foldLeft((0, 0))( // maxKeyLength, avgValueLength
- (b, a) => {
- val maxKeyLength = if (a._1.length > b._1) a._1.length else b._1
- val sumValueLength = b._2 + a._2.length
- (maxKeyLength, sumValueLength)
- }
- )
- (info._1, info._2 / sysProp.size)
- }
- // define padding and width of columns
- val leftPadding = 10
- val rightPadding = 10
- val widthKeyColumn = maxKeyLength + leftPadding
- val widthValueColumn = avgValueLength + rightPadding
- // print table
- printBorder()
- for ((k, v) <- sysProp; if v.length <= avgValueLength && v.length > 10) {
- // for simplification print such 10 < values <= avgValueLength
- printRow(k, v)
- }
- printBorder()
- /**
- * Print one row for key and value.
- *
- * @param key Key
- * @param value Value
- */
- def printRow(key: String, value: String) = {
- print("|" + key + " " * (widthKeyColumn - key.length) + "|"
- + value + " " * (widthValueColumn - value.length) + "|\n")
- }
- /**
- * Print border (top, bottom)
- */
- def printBorder() = {
- print("|" + "-" * widthKeyColumn + "|" + "-" * widthValueColumn + "|\n")
- }
- }
- |---------------------------------------|-------------------------------------------------------------------------------|
- |java.runtime.name |Java(TM) SE Runtime Environment |
- |sun.boot.library.path |F:\Tools\Java\jdk1.8.0_111\jre\bin |
- |java.vm.vendor |Oracle Corporation |
- |java.vendor.url |http://java.oracle.com/ |
- |java.vm.name |Java HotSpot(TM) 64-Bit Server VM |
- |sun.java.launcher |SUN_STANDARD |
- |sun.os.patch.level |Service Pack 1 |
- |java.vm.specification.name |Java Virtual Machine Specification |
- |user.dir |C:\ProgramData\Microsoft\Windows\Start Menu\Programs\JetBrains |
- |java.runtime.version |1.8.0_111-b14 |
- |java.awt.graphicsenv |sun.awt.Win32GraphicsEnvironment |
- |java.endorsed.dirs |F:\Tools\Java\jdk1.8.0_111\jre\lib\endorsed |
- |java.io.tmpdir |C:\Users\aboznyak\AppData\Local\Temp\ |
- |java.vm.specification.vendor |Oracle Corporation |
- |java.specification.name |Java Platform API Specification |
- |sun.management.compiler |HotSpot 64-Bit Tiered Compilers |
- |user.home |C:\Users\aboznyak |
- |java.awt.printerjob |sun.awt.windows.WPrinterJob |
- |java.home |F:\Tools\Java\jdk1.8.0_111\jre |
- |java.specification.vendor |Oracle Corporation |
- |awt.toolkit |sun.awt.windows.WToolkit |
- |java.ext.dirs |F:\Tools\Java\jdk1.8.0_111\jre\lib\ext;C:\Windows\Sun\Java\lib\ext |
- |java.vendor |Oracle Corporation |
- |java.vendor.url.bug |http://bugreport.sun.com/bugreport/ |
- |sun.io.unicode.encoding |UnicodeLittle |
- |---------------------------------------|-------------------------------------------------------------------------------|
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement