Java从英语翻译到猪拉丁语

时间:2017-12-12 14:58:40

标签: java

我有一个计算机科学课的作业用英语单词,并用猪拉丁语重新打印(在这种情况下,只需要把第一个字母放在最后一个字母)。这是我的代码。注意:对于完全信用,它必须是两种不同的方法。

import java.util.Scanner;
public class PigLatin {

public static void main(String[] args){
    Scanner kboard = new Scanner(System.in);
    System.out.println("Enter a string in english: ");
    String x = kboard.nextLine();


}

public static void pLatin(String x){
    String pigx = x.substring(0,1);
    String pigy = x.substring(1);
    System.out.println("The string in pig latin is " + pigy + pigx);


    }

}

我在Eclipse中没有错误,但是当我运行程序时,在输入扫描仪的单词后,它不会打印任何内容。我究竟做错了什么?感谢

3 个答案:

答案 0 :(得分:1)

你永远不会告诉它打印这个词,也不会打电话给你pLatin()函数。

public static void main(String[] args){
    Scanner kboard = new Scanner(System.in);
    System.out.println("Enter a string in english: ");
    String x = kboard.nextLine();
    // MISSING: System.out.println("recieved: " + x);
    // MISSING: pLatin(x);
}

此外,我认为您的pLatin功能不会使猪拉丁正确。

答案 1 :(得分:0)

在public static void main ...

中添加方法调用
    public static void main(String[] args) {
        Scanner kboard = new Scanner(System.in);
        System.out.println("Enter a string in english: ");
        String x = kboard.nextLine();

        pLatin(x);

}

......看看会发生什么。

答案 2 :(得分:0)

请尝试以下代码:

public static void main(String [] args) {
    Scanner kboard = new Scanner(System.in);
    System.out.println("Enter a string in english: ");
    System.out.println("The string in pig latin is: "+ pLatin(kboard.nextLine())); 
}

public static String  pLatin(String x){
    return x+x.charAt(0);
}

一个问题是:

    String pigx = x.substring(0,1); //pigx = the first two letters
                                    //if the world is java -> pigx=ja
    String pigy = x.substring(1); //pigy= all the letters except the first 
                                  //letter. if world is java-> pigy= ava 

    System.out.println("The string in pig latin is " + pigy + pigx);

通过此代码,您不会将第一个字母添加到世界的最后一个索引, 你得到并打印前两个字母(pigx)和除第一个字母以外的所有字母(pigy)。