如何编写java代码来读取一个单词并告诉我它是否以字母a开头?我迷路了 import java.util.Scanner; 公共类IfAndString{ 公共静态void main(字符串[]args){ 扫描仪输入=新扫描仪(System.in); System.out.println(“输入一个单词:”); String line=input.next(); 字符a=行字符(2); 字符b=行字符(2); if(ab) System.out.printf(“\n%s不是以“a”开头的”,b); } }

如何编写java代码来读取一个单词并告诉我它是否以字母a开头?我迷路了 import java.util.Scanner; 公共类IfAndString{ 公共静态void main(字符串[]args){ 扫描仪输入=新扫描仪(System.in); System.out.println(“输入一个单词:”); String line=input.next(); 字符a=行字符(2); 字符b=行字符(2); if(ab) System.out.printf(“\n%s不是以“a”开头的”,b); } },java,Java,在标题中回答您的问题。只需使用String类中的boolean startsWith(String String)方法,例如: import java.util.Scanner; public class IfAndString { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("Enter a Wor

在标题中回答您的问题。只需使用String类中的boolean startsWith(String String)方法,例如:

import java.util.Scanner;

public class IfAndString {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("Enter a Word:"); 
        String line = input.next();

        char a = line.charAt(2);
        char b = line.charAt(2);

        if (a < b)
            System.out.printf("%s starts with 'a'.",a);
        else if (a > b)
            System.out.printf("\n%s does not start with 'a'.",b);
    }
}
import java.util.Scanner;

public class IfAndString {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("Enter a Word:"); 
        String line = input.next();

       if (line.startsWith("a")){
           System.out.printf("%s starts with 'a'.",a);
       } else{
           System.out.printf("\n%s does not start with 'a'.",b);
       }
    }
}
如果要比较字符,请执行以下操作:

import java.util.Scanner;

public class IfAndString {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("Enter a Word:"); 
        String line = input.next();

        char a = line.charAt(2);
        char b = line.charAt(2);

        if (a < b)
            System.out.printf("%s starts with 'a'.",a);
        else if (a > b)
            System.out.printf("\n%s does not start with 'a'.",b);
    }
}
import java.util.Scanner;

public class IfAndString {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("Enter a Word:"); 
        String line = input.next();

       if (line.startsWith("a")){
           System.out.printf("%s starts with 'a'.",a);
       } else{
           System.out.printf("\n%s does not start with 'a'.",b);
       }
    }
}

您可以使用
startsWith()
方法

例如:

"abc".charAt(0) == 'a'; // String implement CharSequence.
public static void main(String[] args) 
{
    Scanner input = new Scanner(System.in);
    System.out.println("Enter a Word:"); 
    String line = input.next();

    if (line.startsWith("a"))
    {
        System.out.println(line + ": starts with a");
    }
    else
    {
        System.out.println("does not start with a");
    }
}
此外,如果要检查
a
,即使他们输入了大写
a
,也可以在if检查中将行变量更改为小写,以同时考虑小写和大写
a

例如:

"abc".charAt(0) == 'a'; // String implement CharSequence.
public static void main(String[] args) 
{
    Scanner input = new Scanner(System.in);
    System.out.println("Enter a Word:"); 
    String line = input.next();

    if (line.startsWith("a"))
    {
        System.out.println(line + ": starts with a");
    }
    else
    {
        System.out.println("does not start with a");
    }
}

你应该描述你发布的代码到底出了什么问题。难道
a
b
不是同一个字符吗?在任何情况下,
java.lang.String
从1.0版开始就有了
startsWith(字符串前缀)
输入值:mineral“mineral”不以“a”开头。“这就是程序应该做的。。。我知道我的代码是错误的,但不知道如何修复它…如果您关心字符串的开头,为什么要使用字符串的第三个字符(索引为2)?无论如何,由于a和b相同,a既不小于也不大于b;什么也不会发生。