#min/max different way

1 messages ยท Page 1 of 1 (latest)

gleaming spruceBOT
#

@pallid badger has a question:

javatoptier

int min = Math.min(num1, num2);
int max = Math.max(num1, num2);
can i do this code in a different way?

#

<@&987246399047479336> please have a look, thanks.

#

Here is an AI assisted attempt to answer your question ๐Ÿค–. Maybe it helps! In any case, a human is on the way ๐Ÿ‘. To continue talking to the AI, you can use </chatgpt:1108714622413963314>.

#
TJ-Bot
Int min = Math.min(num1, num2); int max = Math.max(num1, num2); can i do this code in a different way?

Yes, you can achieve the same functionality in a different way using conditional statements. Here is an example:

int num1 = 10;
int num2 = 20;

int min, max;

if(num1 < num2) {
    min = num1;
    max = num2;
} else {
    min = num2;
    max = num1;
}

System.out.println("Min: " + min);
System.out.println("Max: " + max);

In this code, we compare num1 and num2 using an if-else statement to determine which is the minimum and maximum value. This approach achieves the same result as using Math.min() and Math.max() functions.

Alternatively, you can also use a ternary operator to make the code more concise:

int min = (num1 < num2) ? num1 : num2;
int max = (num1 > num2) ? num1 : num2;

System.out.println("Min: " + min);
System.out.println("Max: " + max);

This code snippet uses the ternary operator to assign values to min and max based on the comparison of num1 and num2. It's a more compact way of achieving the same result.

lofty crystal
#

to complement what the bot said, ur current code is likely the best way to do it

#

its the easiest to read and also compact

#

so unless u have to hunt for a different solution, stick with it

orchid abyss
#

It also depends on the use. If you just need min/max that's fine. If it's within the scope: get me the number within min/max range it's different.

lofty crystal
#

also, if u have multiple numbers to check (like a whole list/array), u can use streams summary-statistics to avoid multiple iterations

turbid hill
#

how can I wall a value in one line, like keep it above a value, but below a value

lofty crystal
#

this is called clamp-ing

#

best would be to write urself a helper method:

#
public static int clamp(int value, int min, int max) {
  if (value < min) { return min; }
  if (value > max) { return max; }
  return value;
}
#
int input = ...
int result = clamp(input, 1, 20); // is now restricted to 1-20
orchid abyss
lofty crystal
#

nice

white oracle