java - 如何更改数组元素的值

标签 java arrays

int A = 300;
int B = 400;
int C = 1000;
int D = 500;

int []abcd = {A,B,C,D};
Arrays.sort(abcd);   // the sequence of array elements will be {300, 400, 500,1000}

我想根据排序后变量 A、B、C、D 在数组中的位置来更改变量 A、B、C、D 的值。

例如变量A位于索引0,因此A的值变为1而不是300, 变量 B 位于索引 1,因此 B 的值更改为 2 而不是 400, 变量 D 位于索引 2 处,因此 D 的值更改为 3 而不是 500, 变量C位于索引3处,因此C的值变为4而不是1000,

变量的最终值将是: A = 1; B=2; C = 4; D = 3;

最佳答案

一种简单的方法是遍历数组的每个元素,并在执行时检查值:

for (int i = 0; i < abcd.length; i++)
{
    if (abcd[i] == A)
    {
        A = i+1;
    }
}
// Rinse and repeat for B, C, D

如果采用这种方法,当然,请将其转换为一个函数,该函数接受数组、要搜索的值,并返回其在数组中的索引。

关于java - 如何更改数组元素的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/703548/

相关文章:

python - 对数组进行高效的双重迭代

C++ Builder 如何用 vector 构建动态对象?

python - 查找二维数组中未满 NaN 的第一行的行索引

arrays - 在 Julia 中键入数组元素的逻辑是什么

c++ - setPercent 函数正在打印垃圾数据

使用变量的 Java 机器人类

java - mockito 和 jetty-client : receiving NullPointerException when start() and stop() methods are invoked

java - 如何理解和实现 Twitter API 制作 Android Twitter 客户端

java - 从此字符串中获取日期

java - 在 Java/Swing 中获取系统字体属性