我想格式化我的输出文本,使其与我的计数器值相对应。例如,我有3个计数器,希望在1、2和大于2时输出不同的单词。
我尝试使用字符串格式,但它只适用于 2 个不同的计数器。
这是我的代码:
package vaja13;
import java.util.Scanner;
public class Vaja13
{
public static void main(String[] args)
{
System.out.print("Vnesi besedilo: ");
Scanner sc = new Scanner(System.in);
String besedilo = sc.nextLine();
char [] tabela = besedilo.toCharArray();
int crke = 0,stevilke = 0,presledki = 0;
int i=0;
while(i<tabela.length-1)
{
if (Character.isLetter(tabela[i]))
{
crke++;
i++;
}
if (Character.isDigit(tabela[i]))
{
stevilke++;
i++;
}
if (Character.isWhitespace(tabela[i]))
{
presledki++;
i++;
}
}
System.out.println(String.format("V besedilu je %d %s ", crke,crke==2,crke >2 ? "crka":"crki":"crke"));
}
}
最佳答案
在最后一个 System.out.println
行中,3 个条件部分
crke==2,crke >2 ? "crka":"crki":"crke"
是无效的 Java 语法,您可以使用:
crke==2 ? "crka": crke > 2 ? "crki" :"crke"
不过,这有点难以阅读。请注意? :
运算符从右到左关联。
关于java - 具有 3 个条件的字符串格式 : is it possible?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30401160/