If statement 编写一个方法,从用户处获取一个字符串,并只返回偶数字符

If statement 编写一个方法,从用户处获取一个字符串,并只返回偶数字符,if-statement,for-loop,methods,parameters,java.util.scanner,If Statement,For Loop,Methods,Parameters,Java.util.scanner,我是个彻头彻尾的傻瓜,我已经花了好几个小时做这部分作业了,现在我很确定我做得完全错了 要求用户输入加密的句子,然后解密句子并输出 信息技术这里是加密算法:只有偶数字符是加密算法的一部分 消息例如,如果用户在解密后输入“Hiejlzl3ow”,则它将是 “你好”这个词。必须为此部分编写一个方法。此方法应收到 字符串作为其参数,并返回解密后的字符串作为其参数 以下是我目前的代码: import java.util.Scanner; public class secret{ public static

我是个彻头彻尾的傻瓜,我已经花了好几个小时做这部分作业了,现在我很确定我做得完全错了

要求用户输入加密的句子,然后解密句子并输出 信息技术这里是加密算法:只有偶数字符是加密算法的一部分 消息例如,如果用户在解密后输入“Hiejlzl3ow”,则它将是 “你好”这个词。必须为此部分编写一个方法。此方法应收到 字符串作为其参数,并返回解密后的字符串作为其参数

以下是我目前的代码:

import java.util.Scanner;
public class secret{
public static Scanner console = new Scanner(System.in);
       public static void main(String[] args) {
       System.out.print("Can you encrypt a sentance for me? \n");
       String input = console.nextLine();
       String foundMessage = findMessage(input);
        System.out.print(foundMessage);
         }
         public static String findMessage(String encodedMessage){
           for (int i=0; i<encodedMessage.length(); i++){
               if(i%2==0){
             String decode =encodedMessage.charAt(i);      
           }    
            }
          return decode; 
        }
}

我想你可以通过增加你的循环2来得到你想要的。。。 同时,在循环中声明解码的那一刻;它将在每次迭代中重新创建,所以这不会达到您想要的效果。这种方法应该有效:

 public static String findMessage(String encodedMessage){

   String decode;
   for (int i=0; i<encodedMessage.length(); i+=2){

      decode += encodedMessage.charAt(i);    

   }
   return decode; 
  }

您可以在if语句中定义字符串解码,以便在return语句中无法在该语句之外看到它。此外,您应该在以前的解码字符串中添加字符。另外,在主方法之外定义MethodFindMethod,您的问题就解决了

import java.util.Scanner;

public class Secret{

    public static Scanner console = new Scanner(System.in);

    public static void main(String[] args) {
        System.out.print("Can you encrypt a sentance for me? \n");
        String input = console.nextLine();
        String foundMessage = findMessage(input);
        System.out.print(foundMessage);
    }

    public static String findMessage(String encodedMessage){
        String decode = "";

        for (int i=0; i<encodedMessage.length(); i++){

            if(i%2==0){
               decode += encodedMessage.charAt(i);      
           }    
         }
       return decode; 
    }

}