java中两个字符的比较 import java.util.Scanner; 公共班机{ 专用静态扫描仪; 私有静态int n; 私有静态int b[]; 私有静态字符串a1; 私有静态字符串a2; 私有静态int t[]; 公共静态void main(字符串s[]{ 扫描=新扫描仪(System.in); n=scan.nextInt(); b=新整数[n]; t=新整数[n]; 对于(int i=0;i

java中两个字符的比较 import java.util.Scanner; 公共班机{ 专用静态扫描仪; 私有静态int n; 私有静态int b[]; 私有静态字符串a1; 私有静态字符串a2; 私有静态int t[]; 公共静态void main(字符串s[]{ 扫描=新扫描仪(System.in); n=scan.nextInt(); b=新整数[n]; t=新整数[n]; 对于(int i=0;i,java,Java,我得到n值(即)行李数。然后在每个袋子里放苹果。为此,我使用For循环。然后是两条线。字符串应为'G'或'B'(例如'GGGBG'(G表示好,B表示坏) 从不同的人对袋子里的苹果的看法来看这两条线。如果两个字符串在同一位置包含“G”,则代码应显示该位置 但是,它不起作用。我试着运行这个代码。输入部分正在工作。之后,它在屏幕上不显示任何内容 charAt(i)返回一个char,而不是Character,尽管编译器会自动将其装箱为一个字符 但是,字符从不等于字符串 您的代码应该是: impor

我得到n值(即)行李数。然后在每个袋子里放苹果。为此,我使用For循环。然后是两条线。字符串应为'G'或'B'(例如'GGGBG'(G表示好,B表示坏)

从不同的人对袋子里的苹果的看法来看这两条线。如果两个字符串在同一位置包含“G”,则代码应显示该位置

但是,它不起作用。我试着运行这个代码。输入部分正在工作。之后,它在屏幕上不显示任何内容

charAt(i)
返回一个
char
,而不是
Character
,尽管编译器会自动将其装箱为一个字符

但是,
字符
从不等于
字符串

您的代码应该是:

   import java.util.Scanner;

    public class Main {
    private static Scanner scan;
    private static int n;
    private static int b[];
    private static String a1;
    private static String a2;
    private static int t[];

    public static void main(String s[]) {
        scan = new Scanner(System.in);
        n = scan.nextInt();
        b = new int[n];
        t = new int[n];
        for (int i = 0; i < n; i++) {
            b[i] = scan.nextInt();
        }

        a1 = scan.next();
        a2 = scan.next();

        for (int i = 0; i < n; i++) {
            Character c = a1.charAt(i);
            Character c2 = a2.charAt(i);
            if (c.equals("G")) {
                if (c2.equals("G")) {
                    System.out.println(i);
                }
            }
        }
    }

}
for(int i=0;i
for (int i = 0; i < n; i++) {
    char c1 = a1.charAt(i);
    char c2 = a2.charAt(i);
    if (c1 == 'G' && c2 == 'G') {
        System.out.println(i);
    }
}