/**
*
* @author hamza
*/
public class Caesar_Chipher {
// This is where I call my functions
public static void main(String[] args) {
userChoice();
}
//User chooses 1 or 2 to encrypt or decrypt
public static void userChoice() {
Scanner input = new Scanner(System.in);
System.out.print("Enter your choice, 1 = encrypt, 2 = decrypt: ");
int userchoice;
userchoice = input.nextInt();
if (userchoice == 1) {
offsetNumber();
message();
System.out.println(plaintext + shift);
}
if (userchoice == 2) {
offsetNumber();
message();
System.out.println(plaintext + shift);
}
else {
userChoice();
}
}
public static void offsetNumber() {
Scanner offset = new Scanner(System.in);
System.out.print("Enter your shift number: ");
int shift;
shift = offset.nextInt();
if (shift < 27) {
message();
}
}
public static void message() {
Scanner Message = new Scanner(System.in);
System.out.print("Enter your message: ");
String plaintext;
plaintext = Message.next();
}
}
我的代码出了什么问题?当有人加密我希望明文被移位n时,当有人解密时,我希望明文被-n移位。
答案 0 :(得分:0)
这还不是一个完整的答案,但评论不支持此代码示例的多行。
return关键字将变量返回给方法的调用者。因此,在以下示例中,returnMeAnInt()
将在执行代码时替换为4。但是,它还有很多(特别是实例和局部变量),因此堆栈溢出答案无法教你java的基础知识。去寻找教程 - 甚至更好:一本好书。
void main(String[] args) {
int i = returnMeAnInt();
System.out.println(i); // will print 4
}
int returnMeAnInt() {
return 4;
}