元の(空白なし)テキスト文字列とdisemvoweled(スペースなし)テキスト文字列のパーセント差を見つける方法を理解しようとしています。私は式((newAmount-reducedAmount)/ reducedAmount)を使用してこれを実行しようとしていますが、私は幸運を抱えておらず、下に示すようにゼロの値で終わっています。Java:パーセント差を見つける
ありがとうございました!
マイコード:
import java.util.Scanner;
public class Prog5 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner console = new Scanner(System.in);
System.out.println("Welcome to the disemvoweling utility!"); // Initially typed "disemboweling" xD
System.out.print("Enter text to be disemvoweled: ");
String inLine = console.nextLine();
String vowels= inLine.replaceAll("[AEIOUaeiou]", ""); // RegEx for vowel control
System.out.println("Your disemvoweled text is: " + vowels); // Prints disemvoweled text
// Used to count all characters without counting white space(s)
int reducedAmount = 0;
for (int i = 0, length = inLine.length(); i < length; i++) {
if (inLine.charAt(i) != ' ') {
reducedAmount++;
}
}
// newAmount is the number of characters on the disemvoweled text without counting white space(s)
int newAmount = 0;
for (int i = 0, length = vowels.length(); i < length; i++) {
if (vowels.charAt(i) != ' ') {
newAmount++;
}
}
int reductionRate = ((newAmount - reducedAmount)/reducedAmount); // Percentage of character reduction
System.out.print("Reduced from " + reducedAmount + " to " + newAmount + ". Reduction rate is " + reductionRate + "%");
}
}
マイ出力:(テスト文字列は引用符なしである: "テストしてください")
Welcome to the disemvoweling utility!
Enter text to be disemvoweled: Testing please
Your disemvoweled text is: Tstng pls
Reduced from 13 to 8. Reduction rate is 0%
あなたが使用しているため、 'int'、変更してください' int型reductionRate =((newAmount - reducedAmount)/ reducedAmount)。 'to' dobule reductionRate =((ダブル)(newAmount - reducedAmount)/ reducedAmount); ' – BlackMamba