在java中,如何用相应的数字替换数字
我必须编写一个java应用程序,从随机数生成器中读取5个介于0和9之间(含9)的数字。将数字(一次一个)传递给函数,该函数将用下表中的相应数字替换每个数字。最后,写下新的加密号码在java中,如何用相应的数字替换数字,java,function,Java,Function,我必须编写一个java应用程序,从随机数生成器中读取5个介于0和9之间(含9)的数字。将数字(一次一个)传递给函数,该函数将用下表中的相应数字替换每个数字。最后,写下新的加密号码 Digit in Digit out 0 3 1 9 2 4 3 1 4 7 5 6 6 8 7 2 8 0 9
Digit in Digit out
0 3
1 9
2 4
3 1
4 7
5 6
6 8
7 2
8 0
9 5
示例:如果输入的数字为:
1 2 3 4 5
输出将是:
9 4 1 7 6
到目前为止,我所拥有的:
`
`您有从0到9的钥匙。Usw值的长度为10的数组。对于不太特殊的情况,您可以使用usw地图
import java.util.*;
class JAVAhw10 {
private static final int[] table = {3,9,4,1,7,6,8,2,0,5};
public static void main(String[] args) {
int a, b, c, d, e;
a = (int)((Math.random()*100) % (9) + 0);
b = (int)((Math.random()*100) % (9) + 0);
c = (int)((Math.random()*100) % (9) + 0);
d = (int)((Math.random()*100) % (9) + 0);
e = (int)((Math.random()*100) % (9) + 0);
int DigitIn[] = new int[5];
int table[] = new int[10];
//filling in the arrays
DigitIn[0]=a;
DigitIn[1]=b;
DigitIn[2]=c;
DigitIn[3]=d;
DigitIn[4]=e;
System.out.println("This program ecnrypts 5 random numbers");
System.out.println(Arrays.toString(DigitIn));
int[] output = encrypt(DigitIn);
System.out.println(Arrays.toString(output));
}
public static int[] encrypt(int[] input){
int[] output = new int[input.length];
for (int i=0; i<input.length; i++){
output[i] = table[input[i]];
}
return output;
}
}
import java.util.*;
类JAVAhw10{
私有静态final int[]表={3,9,4,1,7,6,8,2,0,5};
公共静态void main(字符串[]args){
INTA、b、c、d、e;
a=(int)((Math.random()*100)%(9)+0);
b=(int)((Math.random()*100)%(9)+0);
c=(int)((Math.random()*100)%(9)+0);
d=(int)((Math.random()*100)%(9)+0);
e=(int)((Math.random()*100)%(9)+0);
int DigitIn[]=新int[5];
int table[]=新的int[10];
//填充数组
DigitIn[0]=a;
DigitIn[1]=b;
DigitIn[2]=c;
DigitIn[3]=d;
DigitIn[4]=e;
System.out.println(“此程序包含5个随机数”);
System.out.println(array.toString(DigitIn));
int[]输出=加密(数字);
System.out.println(Arrays.toString(output));
}
公共静态int[]加密(int[]输入){
int[]输出=新的int[input.length];
对于(int i=0;i你想让我们为你编码吗?很酷。但是你应该使用IDE或文本编辑器来完成。在这里粘贴作业不会神奇地让代码出现。不,我会发布我自己的代码。这只是我正在寻找的函数或方法问题在于“数字输入”是随机的,我不能写50条if语句来检查它们,然后给出正确的等价项。这就是为什么你必须将表表示为一个数组。数组的键是“数字输入”,对应的值是加密值(“数字输出”)当然。我不知道哈希表,但我使用数组。你能告诉我如何检查随机数并给它们分配相应的数字吗。加密中的公共静态(int what?)我提供了代码。检查它是否有效。@user3857450
import java.util.*;
class JAVAhw10 {
private static final int[] table = {3,9,4,1,7,6,8,2,0,5};
public static void main(String[] args) {
int a, b, c, d, e;
a = (int)((Math.random()*100) % (9) + 0);
b = (int)((Math.random()*100) % (9) + 0);
c = (int)((Math.random()*100) % (9) + 0);
d = (int)((Math.random()*100) % (9) + 0);
e = (int)((Math.random()*100) % (9) + 0);
int DigitIn[] = new int[5];
int table[] = new int[10];
//filling in the arrays
DigitIn[0]=a;
DigitIn[1]=b;
DigitIn[2]=c;
DigitIn[3]=d;
DigitIn[4]=e;
System.out.println("This program ecnrypts 5 random numbers");
System.out.println(Arrays.toString(DigitIn));
int[] output = encrypt(DigitIn);
System.out.println(Arrays.toString(output));
}
public static int[] encrypt(int[] input){
int[] output = new int[input.length];
for (int i=0; i<input.length; i++){
output[i] = table[input[i]];
}
return output;
}
}