Math.max和Math.min会更改它们应用的值吗?

Joh*_*ith 1 java

我一直在阅读我的一位讲师设置的一些代码,他写了一些类似"让我们为一个值设置最大值和最小值"的内容.

然后他写道(我在这里解释价值观)

int x = 5;
x = Math.min(x, 0);
x = Math.max(x, 10);
Run Code Online (Sandbox Code Playgroud)

然后他继续使用他的代码,好像x仍然等于5,而当我通过计算机运行此代码时,max和min函数总是将x的值更改为0然后再更改为10.

这听起来像是他的错误吗?他应该在继续之前还原x吗?或者此功能是否以其他方式工作,具体取决于实际设置最大值和最小值而不更改原始变量的情况?

Joo*_*gen 5

你是对的; 他可能是这个意思:

int x = 5;
x = Math.max(x, 0);
x = Math.min(x, 10);
Run Code Online (Sandbox Code Playgroud)

它将x保持在0到10之间.