import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.*; public class Main { public static void main(String[] args) throws Exception { Main m = new Main(); m.input(); m.Aggregate(); } StringBuilder sb = new StringBuilder(); Scanner sc = new Scanner(System.in); int roop = sc.nextInt(); String com = sc.next(); public void input(){ for(int i = 0 ; i < roop ; i++){ sb.append(com); } } int sum = 0; int count = 0; public void Aggregate(){ for(int i = 0 ; i < sb.length() ; i++){ Character c = sb.charAt(i); System.out.print(sum + " "); if(c.equals("A")){ sum += (1+count); count++; System.out.print("A"); }else{ count = 0; System.out.print("B"); } } System.out.println(sum); } public boolean equals(Object obj) { if (obj == obj) return true; if (obj == null) return false; } }
■入力内容
3
ABBAA
■質問
Aggregateメソッドの中で、sb変数の中身を1文字ずつ取り出して
if文に使いたいと考えています。
charのままではcharAtメソッドが使えないので、characterにしたのですが、
そうするとequalsメソッドが文字と変数の中身を等値と判断してくれません。
equalsをオーバーロードしようとしてみたのですが、
「missing return statement」が出てきて出来ません。
オーバーロードしてるequalsを消せばエラーは消えます。
このエラーが発生する原因を教えていただけますでしょうか。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/01/25 01:02
2018/01/25 01:22
2018/01/25 01:46
2018/01/25 02:14
2018/01/25 02:32 編集
2018/01/25 03:43
2018/01/25 04:35
2018/01/25 05:14
2018/01/25 07:42
2018/01/25 16:59