ADD week 5
This commit is contained in:
		
							
								
								
									
										64
									
								
								02-Easy5/E5/sources/kotlin/time/DurationJvmKt.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								02-Easy5/E5/sources/kotlin/time/DurationJvmKt.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,64 @@ | ||||
| package kotlin.time; | ||||
|  | ||||
| import java.math.RoundingMode; | ||||
| import java.text.DecimalFormat; | ||||
| import kotlin.Metadata; | ||||
| import kotlin.jvm.internal.Intrinsics; | ||||
|  | ||||
| /* compiled from: DurationJvm.kt */ | ||||
| @Metadata(d1 = {"\u0000.\n\u0000\n\u0002\u0010\u000b\n\u0002\b\u0003\n\u0002\u0010\u0011\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0010\b\n\u0000\n\u0002\u0010\u000e\n\u0000\n\u0002\u0010\u0006\n\u0002\b\u0002\u001a\u0010\u0010\t\u001a\u00020\u00072\u0006\u0010\n\u001a\u00020\u000bH\u0002\u001a\u0018\u0010\f\u001a\u00020\r2\u0006\u0010\u000e\u001a\u00020\u000f2\u0006\u0010\n\u001a\u00020\u000bH\u0000\u001a\u0018\u0010\u0010\u001a\u00020\r2\u0006\u0010\u000e\u001a\u00020\u000f2\u0006\u0010\n\u001a\u00020\u000bH\u0000\"\u0014\u0010\u0000\u001a\u00020\u0001X\u0080\u0004¢\u0006\b\n\u0000\u001a\u0004\b\u0002\u0010\u0003\"\u001c\u0010\u0004\u001a\u000e\u0012\n\u0012\b\u0012\u0004\u0012\u00020\u00070\u00060\u0005X\u0082\u0004¢\u0006\u0004\n\u0002\u0010\b¨\u0006\u0011"}, d2 = {"durationAssertionsEnabled", "", "getDurationAssertionsEnabled", "()Z", "precisionFormats", "", "Ljava/lang/ThreadLocal;", "Ljava/text/DecimalFormat;", "[Ljava/lang/ThreadLocal;", "createFormatForDecimals", "decimals", "", "formatToExactDecimals", "", "value", "", "formatUpToDecimals", "kotlin-stdlib"}, k = 2, mv = {1, 8, 0}, xi = 48) | ||||
| /* loaded from: classes.dex */ | ||||
| public final class DurationJvmKt { | ||||
|     private static final boolean durationAssertionsEnabled = false; | ||||
|     private static final ThreadLocal<DecimalFormat>[] precisionFormats; | ||||
|  | ||||
|     public static final boolean getDurationAssertionsEnabled() { | ||||
|         return durationAssertionsEnabled; | ||||
|     } | ||||
|  | ||||
|     static { | ||||
|         ThreadLocal<DecimalFormat>[] threadLocalArr = new ThreadLocal[4]; | ||||
|         for (int i = 0; i < 4; i++) { | ||||
|             threadLocalArr[i] = new ThreadLocal<>(); | ||||
|         } | ||||
|         precisionFormats = threadLocalArr; | ||||
|     } | ||||
|  | ||||
|     private static final DecimalFormat createFormatForDecimals(int i) { | ||||
|         DecimalFormat decimalFormat = new DecimalFormat("0"); | ||||
|         if (i > 0) { | ||||
|             decimalFormat.setMinimumFractionDigits(i); | ||||
|         } | ||||
|         decimalFormat.setRoundingMode(RoundingMode.HALF_UP); | ||||
|         return decimalFormat; | ||||
|     } | ||||
|  | ||||
|     public static final String formatToExactDecimals(double d, int i) { | ||||
|         DecimalFormat createFormatForDecimals; | ||||
|         ThreadLocal<DecimalFormat>[] threadLocalArr = precisionFormats; | ||||
|         if (i < threadLocalArr.length) { | ||||
|             ThreadLocal<DecimalFormat> threadLocal = threadLocalArr[i]; | ||||
|             DecimalFormat decimalFormat = threadLocal.get(); | ||||
|             if (decimalFormat == null) { | ||||
|                 decimalFormat = createFormatForDecimals(i); | ||||
|                 threadLocal.set(decimalFormat); | ||||
|             } else { | ||||
|                 Intrinsics.checkNotNullExpressionValue(decimalFormat, "get() ?: default().also(this::set)"); | ||||
|             } | ||||
|             createFormatForDecimals = decimalFormat; | ||||
|         } else { | ||||
|             createFormatForDecimals = createFormatForDecimals(i); | ||||
|         } | ||||
|         String format = createFormatForDecimals.format(d); | ||||
|         Intrinsics.checkNotNullExpressionValue(format, "format.format(value)"); | ||||
|         return format; | ||||
|     } | ||||
|  | ||||
|     public static final String formatUpToDecimals(double d, int i) { | ||||
|         DecimalFormat createFormatForDecimals = createFormatForDecimals(0); | ||||
|         createFormatForDecimals.setMaximumFractionDigits(i); | ||||
|         String format = createFormatForDecimals.format(d); | ||||
|         Intrinsics.checkNotNullExpressionValue(format, "createFormatForDecimals(… }\n        .format(value)"); | ||||
|         return format; | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user