char c='\t'
system.out.println(c);
byte b+=2实际b=(byte)(b+2);
b++实际b=(byte)(b+1);
运算符优先级(递减)
括号>
单目运算符(++,--,!)>
乘除取余>
加减>
位移>
比较运算符(< > >= instanceof)
逻辑与
逻辑或
逻辑异或
短路与
短路或
三目运算符
赋值运算符
原码、反码、补码
Java没有无符号数,计算机以补码的方式运算,最后结果看原码
符号位 0正 1复
正数三码合一(原码=反码=补码)
负数 的反码:原码符号位不变,其他位取反
负数 的补码 :反码+1
负数 的反码: 补码-1
位运算符
>>算术右移(除以2):符号位不变,低位溢出,符号位补缺失的高位
<<算术左移(乘以2):符号位不变,低位补0
>>>无符号右移,逻辑右移 低位溢出,高位补0
当a为小数
a%b=a-(int)a/b*b;(约等于)
判断是否为闰年
public static void main(String []args) {
java.util.Scanner input = new java.util.Scanner(System.in);
//判断是闰年
System.out.println("请输入年份");
int s=input.nextInt();
//闰年==>>能被4整除且不等被100整除 或 能被400整除
if(s%400==0||s%4==0&&s%100!=0)
System.out.println(s+"年是闰年");
else
System.out.println(s+"年不是闰年");
}
switch语法
switch(byte short int char enum string)
public class BinaryTest {
public static void main(String []args) {
java.util.Scanner input = new java.util.Scanner(System.in);
//输入
System.out.println("请输入字母");
int a=input.next().charAt(0);
switch(a){
case 'a':
//没有break会直接执行下一个case里的内容,直到遇见break或default
System.out.println("礼拜一");
break;
case 'b':
System.out.println("礼拜二");
break;
case 'c':
System.out.println("礼拜三");
break;
case 'd':
System.out.println("礼拜四");
break;
case 'e':
System.out.println("礼拜五");
break;
case 'f':
System.out.println("礼拜六");
break;
case 'g':
System.out.println("礼拜天");
break;
default:
System.out.println("输入有误");
//default里有没有break不重要,无论如何都会退出switch
}
}
}
public class BinaryTest {
public static void main(String []args) {
java.util.Scanner input = new java.util.Scanner(System.in);
while(true){
System.out.println("请输入分数");
Double score=input.nextDouble();
if(score>=0&&score<=100){
int tem=(int)(score/60);
switch(tem){
case 0:
System.out.println(score+"分不合格");
break;
case 1:
System.out.println(score+"分合格");
break;
}
}
else
System.out.println("分数录入错误");
// int a=input.next().charAt(0);
}
}
}
水仙花数
Math.pow(double a,double b) a的b次方
import java.util.*;
public class BinaryTest {
public static void main(String[] args){
//水仙花数 三位数 abc=a三次方+b三次方+c三次方
Scanner input = new Scanner(System.in);
System.out.println("请输入:");
while(true){
int a = input.nextInt();
int a1 = a%10;
int a2 = (a/10)%10;
int a3 = (a/100)%10;
if(a > 999){
System.out.println(a+"不是三位数,不是水仙花数");
}
else if(a < 100){
System.out.println(a+"不是三位数,不是水仙花数");
}
else if (a == (int)(Math.pow(a1, 3.0) + Math.pow(a2, 3.0) + Math.pow(a3, 3.0))) {
System.out.println(a+"是水仙花数");
}
else{
System.out.println(a+"不是水仙花数");
}
}
}
}