Java 输出字符串的最后一个字母

Java 输出字符串的最后一个字母,java,string,Java,String,有人能帮我吗?我正在上一门初级编程课程,我的程序无法输出字符串的最后一个字母?这是我的节目: public class String { private static java.lang.String string; public static void main(java.lang.String[] args) { Scanner input = new Scanner(System.in);

有人能帮我吗?我正在上一门初级编程课程,我的程序无法输出字符串的最后一个字母?这是我的节目:

public class String {   
    private static java.lang.String string;     

    public static void main(java.lang.String[] args) {      
        Scanner input = new Scanner(System.in);                             
        System.out.println("Enter a string: "); //user enters a word                      
        java.lang.String word = input.nextLine();               
        System.out.print("The length of " + word + " is " +          
        word.length()); //gives the number of characters in the word         
        java.lang.String length = input.nextLine();                 
        System.out.print("The first character: " + word.charAt(0)); //gives the first letter of word        
        java.lang.String first = input.next();              
        System.out.print("The last character: " + word.charAt(4)); //gives the last letter of word      
        java.lang.String last = input.next();
    }
}

你知道如何计算单词的长度,你在这里做到了:

System.out.print("The length of " + word + " is " + word.length());
但是,当您尝试获取最后一个字母时,您没有使用该信息,而是使用常量“4”:

试着把你的两个答案结合起来。但也要注意你帖子上关于从长度中减去一的评论

System.out.println("last character: " +
                       string.substring(string.length() - 1)); 

希望有帮助

当然,因为您得到的是索引4处的字符,而不是最后一个。要获取最后一个索引,请使用string.length-1
System.out.println("last character: " +
                       string.substring(string.length() - 1));