私は、ユーザが決めた数を除いて、素数をリストアップするプログラムを書こうとしています。最後の数字の後にカンマを削除するには?
私は素数をコンマで区切りたいですが、最終素数の後にコンマを取り除くことはできません。
は、リストがあるべきユーザーは数10を選ぶと言う:私は何を得ることはあり 2,3,5,7-
: 2,3,5,7-、
これは多分尋ねられるかもしれませんが、私は何か助けになるか、私の問題にどのように当てはめるかを理解できません。
誰かが正しい方向に向けるでしょうか?
ありがとうございました。
Scanner scanner = new Scanner(System.in);
int i = 0;
int num = 0;
String primeNumbers = "";
System.out.println("Pick a number, any number: ");
int n = scanner.nextInt();
for (i = 1; i < n; i++) {
int counter = 0;
for (num = i; num >= 1; num--) {
if (i % num == 0) {
counter = counter + 1;
}
}
if (counter == 2) {
primeNumbers = primeNumbers + i + ",";
}
}
System.out.println("\nThe prime numbers up to " + n + " are: ");
System.out.println(primeNumbers);
必要なものに参加します。パフォーマンスのボトルネックです。 'StringBuilder.append()'を使用し、forループの外側で 'StringBuilder.delete()'を使用して最後の文字(カンマ)を削除してください – rafid059
数値をintリストに保存できますか?そして、あなたは 'System.out.println(list.stream()。map(String :: valueOf).collect(Collectors.joining("、 ")));' – dty
を利用することができます。ヘルプ@Rafiduzmann Sonnet、ボード上であなたのアドバイスを取るでしょう! – Keeron