变量和运算符

变量

  • 格式
int x = 3 变量类型 变量名 = 值

  • 基本数据类型
    • byte、short、int、long(整数型)
    • float、double(小数型)
    • char(字符型)
    • boolean(布尔型)
  • String(字符串型)(常用)
  • 变量名
    • 命名唯一,不能重复
    • 驼峰表示法(mySuperStar)
获取用户输入
Scanner scanner = new Scanner(System.in); //定义一个从屏幕获得输入信息的变量int age = scanner.nextInt(); //获得用户从屏幕输入的整数String name = scanner.nextLine(); //获得用户从屏幕输入的字符串

【变量和运算符】例子
Scanner scanner=new Scanner(System.in); System.out.println("请输入数字:"); int age = scanner.nextInt(); System.out.println("您的年龄是"+age+"岁"); System.out.println("请输入名字"); String name = scanner.next(); System.out.println("您的名字是"+name);

运算符
  • 算术运算符
    +,-,*,/,%
  • 赋值运算符
    =
  • 关系运算符
    <,>,!=,==,>=,<=
表达式
int x=9; int y=x+1

例子1. 用户输入半径,系统算圆的周长。
Scanner a = new Scanner(System.in); double pai=3.14; System.out.println("请输入圆的半径"); int r =a.nextInt(); double c=2*pai*r; System.out.println("面积是"+c);

例子2. 用户输入3门成绩,系统算出平均分。
Scanner a = new Scanner(System.in); System.out.println("请输入JAVA成绩"); int java=a.nextInt(); System.out.println("请输入oracle成绩"); int oracle=a.nextInt(); System.out.println("请输入HTML成绩"); int html=a.nextInt(); double avg=(java+oracle+html)/3.0; System.out.println("平均成绩是"+avg);

例子3. 天数换算系统(天>周)
Scanner a = new Scanner(System.in); System.out.println("天数换算系统"); System.out.println("请输入天数"); int day=a.nextInt(); System.out.println(day/7+"周零"+day%7+"天");

例子4. 天数换算系统(天>年)(假设一年360天,一个月30天)
Scanner a = new Scanner(System.in); System.out.println("天数换算系统"); System.out.println("请输入天数"); int day=a.nextInt(); System.out.println(day/360+"年"+day%360/30+"月"+day%360%30/7+"周零"+day%360%30%7+"天");

类型转换
  • 自动转换
    • 目标类型必须大于原类型
char c='B'; int d=9; int e=c+d; //int类型>char类型

  • 强制转换
int b=(int)10.2; double avg=(double)65/3; double avg=(60+60+61)/(double)3; //=(变量类型)表达式

例子1. 去年Apple笔记本所占市场份额是20,今年增长的市场份额是9.8,求今年所占份额。
int lastYear=20; double thisYear=lastYear+9.8; System.out.println(thisYear);

例子2.从控制台输入张三同学的成绩,与李四的成绩(80分)比较,输出“张三的成绩比李四的成绩高吗?” 的判断结果。
Scanner a=new Scanner(System.in); int liGrade=80; System.out.println("请输入张三的成绩"); int zhangGrade=a.nextInt(); boolean age=zhangGrade>liGrade; System.out.println("张三的成绩比李四高吗?"+age);

例子3. 商场举办幸运抽奖活动,四位数的卡号各位相加大于20的会员会中奖。建立一个从控制台输入卡号查看是否中奖的机制。
Scanner a=new Scanner(System.in); System.out.println("请输入卡号:"); int cardNo=a.nextInt(); int sum=cardNo%10+cardNo/10%10+cardNo/100%10+cardNo/1000; System.out.println("会员卡号"+cardNo+"各位之和:"+sum); boolean yes=sum>20; System.out.println("是否中奖:"+yes);

例子4. 从控制台输入3位数,判断该数是否为水仙花数?(水仙花数:各位的三次方相加等于该数)
Scanner a=new Scanner(System.in); System.out.println("请输入3位数字:"); int num=a.nextInt(); int ge=num%10; int shi=num/10%10; int bai=num/100%10; int sum=ge*ge*ge+shi*shi*shi+bai*bai*bai; boolean n=sum==num; System.out.println("该数是否为水仙花数:"+n);

  1. 定义两个整数a,b,从控制台输入两个数,使两个数交换。
System.out.println("请输入第一个数:"); int a=n.nextInt(); System.out.println("请输入第二个数:"); int b=n.nextInt(); int c=a; a=b; b=c; System.out.println("交换之后"+a+":"+b);

    推荐阅读