①短路运算符(“&”和“|”)和非短路运算符(“&&”和“||”)
对于短路运算符要求左右两个表达式都为true或者有一个为true就返回true,对于&&若左边第一个表达式为false则立刻返回false,省去了一些不必要的计算开销,对于||若左边第一个表达式为true则立刻返回true,此时若第二个表达式有误则会被系统忽略。
对于非短路逻辑运算符,则两个表达式都需要进行计算。(同时也是位运算符)
②空语句:;(一条java语句后面跟10个;也合法)
习题1:
编写一程序,实现生成一随机字母(a~z,A~Z),并输出。
public class random {
public static void main(String[] args) {
while (true) {
double rand = Math.random();
int num = (int) (rand * 50);
if (rand <= 0.5) {
char ch = (char) (65 + num);
System.out.println(ch);
} else {
num= num-25;
char ch = (char) (97 + num);
System.out.println(ch);
}
}
}
}
习题2:
编写程序,实现产生(或者输入)一随机字母(a~z,A~Z),转换为大写形式,并输出,采用3元运算符和位运算符实现。
import java.util.Scanner;//导入scanner类
public class test2 {
public static void main(String[] args) {
while (true) {
System.out.print("转换前:");
Scanner sc = new Scanner(System.in);
String ch1 = sc.next();
char ch = ch1.charAt(0);
int num = (int) ch;
num = (num >= 97) ? (num - 32) : (num);
char ch2 = (char) num;
System.out.println("转换后:"+ch2);
}
}
}
输出结果:
转换前:e
转换后:E
转换前:q
转换后:Q