所以我有一个值,该值从类中以整数形式返回,并根据输入的文本的长度进行了多次此操作。我可以打印出每个字符的输出,但是我想将输出组合成一个字符串。这是输出的示例。
输入纯文本:嗨
H的赋值为7
加密的值为721解密的值为7
我的自负是8
加密的值为330解密的值为8
我希望将最终密文打印为"721330"
,以便将其发送到数据库,并将该值与数据库中的值存储区进行比较。
最好的方法是什么?
@SuppressWarnings(“资源”)
公共静态void main(String [] args){
int p = 29;
int q = 41;
int d = 83;
int n = 0;
int w = 0;
int e=27;
int c =1;
String plainText;
String Str = new String("ABCDEFGHIJKLMNOPQRSTUVWXYZ");
//System.out.println(m);
n = p*q;
//System.out.println("The n value equals " + n);
w = (p-1)*(q-1);
//System.out.println("The w value equals " + w);
int qo=0;
int re=0;
w = w*1+d*0;
d = w*0+d*1;
qo = w/d;
//System.out.println("quotient value " + qo);
re = w-qo*d;
//System.out.println("reminder value " + re);
qo=d/re;
//System.out.println("quotient value " + qo);
re = d-qo*re;
//System.out.println("reminder value " + re);
Scanner scn=new Scanner(System.in);
System.out.println("Enter plain-text:");
plainText=scn.nextLine();
plainText=plainText.toUpperCase();
char[] chars = plainText.toCharArray();
for (int i=0;i<chars.length;i++)
{
int m= Str.indexOf(chars[i]);
System.out.println("The value of " +chars[i] + " is " + m +"\n");
toBin(e);
//System.out.println("The binary value of e " + toBin(e));
de_encryption(c,n,m,toBin(e));
int C = de_encryption(c,n,m,toBin(e));
//String final_output = String.valueOf(C);
StringBuilder sb = new StringBuilder();
int part = C;
sb.append(part);
String result = sb.toString();
//I want the final_output value to be appended into a stringbuilder
System.out.println("The encrypted value is " + result);
toBin(d);
//System.out.println("The binary value of d " + toBin(d));
int D = de_encryption(c,n,C,toBin(d));
StringBuilder sb1 = new StringBuilder();
int part1 = D;
sb1.append(part1);
String result1 = sb1.toString();
System.out.println("The decrypted value is "+ result1 +"\n");
}
}
最佳答案
如果我理解正确,那么您是在问我们如何通过串联多个部分来创建String。
使用StringBuilder:
StringBuilder sb = new StringBuilder();
for (...) {
String part = ...;
sb.append(part);
}
String result = sb.toString();