数据类型转换和运算符的分类

一.隐式转换

1.byte,short,char参与运算的时候,会自动提升为int类型

2.多种数据类型参与运算,结果以大的数据类型为准

3.数据类型从小大到的顺序为: byte,short,char,int,long,float,double

举例1: byte a=3; byte b=4; //byte c=a+b;//错误:a,b会自动提升为int,a+b的结果为int类型,不能用byte接收。 int c=a+b;//正确

举例2: byte a=3; int b=4; //byte c=a+b;//错误:a是byte类型,会自动提升为int,a+b的结果为int类型,

    不能用byte接收。 int a+b;//正确:a会提升为int,a+b的结果也为int类型

举例3: char a='a'; //char c1=a+1;//错误:a是char类型,也会自动提升为int,'a'的ASCII值为97,97+1结果为98,

    int类型,不能用char类型接收 int c2=a+1;//正确,结果为98

二.强制类型转换

格式:数据类型 变量名=(数据类型)被转换的数据;
  • int a=3;
  • byte b=4;
  • byte c=(byte)(a+b);//a+b的结果为7,但是我们知道7在byte的范围内,(byte)表示强制转换为byte类型 //注意:强制转换可能改变数据大小

  三.Eclipse的配置

1)设置字体大小
    windows-->Perference-->General-->Appearance-->Color And Font-->Basic-->Text Font-->选中字体大小
2)重置窗口
    windows-->Perspcetive-->reset Perspcetive

3)窗口不见了
    windows-->show View-->选择你需要的窗口

  四.Eclipse的快捷键

(1)功能辅助键:alt+/
    可以在写代码的时候,给我们提示
    main+alt+/  补全main方法
    Syso+alt+/  补全输出语句

(2)其他快捷键【重点】
    ctrl+/
        添加(取消)单行注释
    ctrl+shift+/
        添加多行注释
    ctrl+shift+\
        取消多行注释
    ctrl+d  
        删除代码
    ctrl+alt+下  
        复制代码(可能和Intel显他软件冲突)
    ctrl+shift+F(可能和搜狗输入法冲突了)
        格式化代码
    ctrl+shift+o
        导包
    alt+上/下
        向上,向下移动代码
    ctrl+1
        自动修正(哪里有错,就在哪里ctrl+1)   


更改快捷键:
    window-->preference-->General-->keys-->搜索快捷键并更改-->apply-->OK

五.导入和删除项目

1)导入项目
    【注意】具有项目结构的目录,才能导入到Eclipse中
    右键-->Import-->existing projects into workspace-->browse--选择项目路径-->finish
    选中copy projects into workspace  表示从工作空间中删除

2)删除项目
    选中项目-->右键-->delete

运算符分类

  • + - * / % ++ --
    
    /(除法):整数相除只能得到整数
        如: int a=5;
            int b=2;
            int c=a/b;//c的结果是2 %(取余):取余数 如: int a=5; int b=2; int c=a%b;//c的结果是1 +符号的几种用法 1)加法运算 int sum=3+4;//加法,sum=7 char c='a'; //'a'对应的整数是97 int d=c+1;//'a'会自动转换为int,结果也是int类型 System.out.println(d);//结果:98 2)字符串的连接符 任何数据类型和字符串做“+”运算,其实就是拼接 System.out.println("java"+10);//结果:java10 System.out.println(true+"java");//结果:truejava System.out.println(10+3+"true"+"java");//结果:13truejava ++和--:表示自增1或者自减1 单独使用: ++(--)放在操作数的前面和后面,结果都是一样的,都要自增1(自减1) 举例: int a=3; int b=5; a++; 或者 ++a//自增1后,a的结果为4 b--; 或者 --b//自减1后,b的结果为4 参与其他运算 1)++(--)放在操作数的前面,先自增(自减),再去做其他运算 int a=3; int b=++a;//先让a自增1,a=4;再把a的结果赋值给b,b=4 //等价于a++; b=a; System.out.println("a="+a);//a=4; System.out.println("b="+b);//b=4; 2)++(--)放在操作数的后面,先做其他运算,后自增(自减) int a=3; int b=a++;//先把a的值3赋值给b,b=3;再让a自增,a=4 //等价于int b=a; a++; System.out.println("a="+a);//a=4; System.out.println("b="+b);//b=3; 总结:不管++(--)放在操作数的前面还是后面,最终都得+1或者-1 
  • 2.赋值运算符【重点】

    基本的赋值运算符:=
    扩展的赋值运算符:+= -= *= /= %=
    运算规律:
        把左边和右边的运算结果赋值给左边
        举例:
        int a=3;
        a+=3;//a的结果就是6
    
    注意事项:
        short s=1; s+=1; 等价于 s = (short)(s+1); 
  • 3.关系运算符【重点】

    > >= < <= == !=
    注意==和=的区别
    ==:比较是否相等
    =:赋值运算
    
  • 4.逻辑运算符【重点】

    逻辑运算符必须是对boolean类型进行运算,结果也是boolean类型
    
    &与  |或  ^异或 !非
        &与:两边都是true,结果才是true;否则结果是false |或:两边都是false,结果才是false;否则结果是true ^异或:相同为false,不同为true !非:true则false,false则true &&和|| &&和&的区别 &&有短路效果:左边为false,右边不执行 &左右两边都要执行 ||和|的区别 ||有短路效果:左边为true,右边不执行 |左右两边都要执行 总结:实际开发中用&&和||,就欧了!!! 
  • 5.三元运算符【重点】

    格式:关系表达式?表达式1 : 表达式2

    执行流程:
        A:先判断关系表达式的结果是true,还是false
        B: 如果是true,就执行表达式1
           如果是false,就执行表达式2 //举例1:定义两个变量a=3,b=4;求a和b的最大值 public class Test1{ public static void main(String[] args){ //定义两个变量a=3,b=4; int a=5; int b=10; //求a和b的最大值,把结果赋值给mm int mm=(a>b?a:b); System.out.println("最大值为:"+mm); System.out.println("最大值为:"+(a>b?a:b)); //求a被b的最小值,把结果赋值给nn int nn=a<b?a:b; System.out.println("最小值为:"+nn); System.out.println("最小值为:"+(a<b?a:b)); } } /* 案例2:定义三个变量a=3,b=4,c=5;求a和b,c的最大值 分析: A:先比较a和b的最大值,赋值给max B:再让max和c进行比较,重新赋值给max */ class Test2{ public static void main(String[] args){ //定义三个变量a=3,b=4,c=5 int a=3,b=4,c=5; //可以在一行定义多个变量,用","隔开 //求a和b,c的最大值 //A:先比较a和b的最大值,赋值给max int max=a>b?a:b;//max=4 //B:再让max和c进行比较,重新赋值给max max=max>c?max:c; //max=5 System.out.println("三个数最大值为:"+max); } } 
  • 运算符练习

    重要:写代码其实就是一个翻译的过程,把题意中主要的信息摘出来,用代码去逐条翻译

    • 1.从题干中摘取有用信息
    • 2.用代码取翻译

      /*
          中百超市苹果的价格为3块一斤,现在有78块钱
          问:你最多能买几斤苹果?还剩多少钱?
              如果剩下的钱多余10块,就输出true;
              如果剩下的钱少于10块,就输出false
      */
      public class Test{ public static void main(String[] args){ //苹果的价格为3块一斤 int applePrice=3; //现在有78块钱 int money=78; //你最多能买几斤苹果? int count=money/applePrice;//数量=总价/单价 System.out.println(money+"块钱可以买"+count+"斤苹果"); //还剩多少钱? int shengYu=money%applePrice; System.out.println(money+"块钱买了"+count+"斤苹果,还剩"+shengYu+"块钱"); // 如果剩下的钱多余10块,就输出true; System.out.println(shengYu>10); } } 

四、键盘录入【重点】

  • 1.键盘录入的步骤

    1)导包
        import java.util.Scanner;
    2)创建键盘录入对象
        Scanner sc=new Scanner(System.in);
    3)获取键盘录入数据 int num1=sc.nextInt(); //等待用户键盘录入数据,只能录入int类型的数据 
  • 练习1:键盘录入2个整数,求两个整数的和

    import java.util.Scanner;
    public class Test1{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); System.out.println("请输入第一个整数:"); int a=sc.nextInt(); System.out.println("请输入第二个整数:"); int b=sc.nextInt(); //求a和b的和 System.out.println(a+"+"+b+"="+(a+b)); } } 
  • 练习2: 键盘录入2个整数,求两个整数的最大值

    import java.util.Scanner;
    public class Test2{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); System.out.println("请输入第一个整数:"); int a=sc.nextInt(); System.out.println("请输入第二个整数:"); int b=sc.nextInt(); //求a和b的最大值 int max=a>b?a:b; System.out.println("a和b的最大值为:"+max); } } 
  • 练习3:键盘录入3个整数,求三个整数的最大值

    import java.util.Scanner;
    public class Test3{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); System.out.println("请输入第一个整数:"); int a=sc.nextInt(); System.out.println("请输入第二个整数:"); int b=sc.nextInt(); System.out.println("请输入第三个整数:"); int c=sc.nextInt(); //先求a和b的最大值,赋值给max int max=a>b?a:b; //再让max和c进行比较,把大的值重新赋值给max max=max>c?max:c; System.out.println("a和b,c的最大值为:"+max); } } 

猜你喜欢

转载自www.cnblogs.com/wangjintao-0623/p/9123122.html