格式化输出、中断控制流程语句

2018-10-03  本文已影响0人  爱做梦的严重精神病患者

1.格式化输出

 System.out.printf("Hello, %s. Next year, you'll be %d", name, age);
nameage两个参数分别替换%后面的转换符(s和d)。

转换符 类型 举例
d 十进制整数 159
x 十六进制整数 9f
o 八进制整数 237
f 定点浮点数 15.9
e 指数浮点数 1.59e + 01
g 通用浮点数 ------
a 十六进制浮点数 0x1.fccdp3
s 字符串 Hello
c 字符 H
b 布尔 True
h 散列码 42628b2
% 百分号 %
n 与平台有关的行分隔符 -------
格式说明符语法.png

2.中断控制流程语句

break:分为带标签的break语句和不带标签的break语句。

不带标签的break语句,与用于退出switch语句和break语句一样,它也可以用于退出循环语句。

while( years <= 100) 
{
    balance += payment;
    double interest = balance * interestRate / 100;
    balance += interest;
    if (balance >= goal) break;
    years++;
}

带标签的break语句,用于跳出多重嵌套的循环语句标签必须放在希望跳出的最外层循环之前,并且紧跟着一个冒号

int n;
read_data://标签
while(...)//这个循环被标签标记
{ 
    ...
    for (...)//这个内部循环没有被标记
    {
        System.out.print("...");
        if (n < 0)
          break read_data;//跳出循环while
       ...
      }
}
...

continue:将流程转移到最内层循环首部

while (sum < goal) 
{
    System.out.print("...");
    if (n < 0) continue;
    sum += n;
}

 如果n<0,则continue语句越过了当前循环体的剩余部分,立刻跳到循环首部


 如果将continue语句用于for循环中,就可以跳到for循环的“更新”部分:

for (count = 1; count <= 100; count++)
{
      System.out.print("...");
      if (n < 0) continue;
      sum += n;

}

 如果n<0,则continue语句跳到count++语句。


 还有一种带标签continue语句,将跳到与标签匹配循环首部

上一篇下一篇

猜你喜欢

热点阅读