최대 소수점까지 나열하는 프로그램을 작성하려고하지만 사용자가 결정한 숫자는 포함하지 않습니다.마지막 숫자 다음에 쉼표를 제거하는 방법은 무엇입니까?
소수를 쉼표로 구분하고 싶지만 최종 소수 뒤에 쉼표를 제거 할 수 없습니다.
목록이 목록은해야 사용자가 수 (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). 콜렉터 (Collectors.joining (","))); ' – dty
도와 주셔서 감사합니다. @Rafiduzmann Sonnet, 선상에서 당신의 충고를 받아 들일 것입니다! – Keeron