zoukankan      html  css  js  c++  java
  • 人生苦短我学Java-3-String类型/多种运算符/if语句判断

    一、String类型变量的使用

    1、String属于引用数据类型,翻译为:字符串(区分大小写的哦)
    2、声明string类型变量时,使用双引号,一对""
    3、String可以和8种基本数据类型变量做运算,且运算只能是连接运算:+,并且输出数据类型为:String

    public class a_string {
        public static void main(String[] args) {
            String a = "泡泡龙";
            String b = " 1";
            String c = "姓名:";
            System.out.println(c + a + b);
        }
    }

     二、运算符

    1、算术运算符:

    public class a_number {
        public static void main(String[] args) {
            int a = 2;
            int b = 4;
    
            // 正号:+
            System.out.println(+a);
    
            // 负号:-   负负会得正
            System.out.println(-b);
    
            // 加:+
            System.out.println(a + b);
    
            // 减:-
            System.out.println(a - b);
    
            // 乘:*
            System.out.println(a * b);
    
            // 除:/
            System.out.println(b / a);
    
            // 取余(取模):%
            System.out.println(b % a);
    
            // 自增(前):++
            System.out.println("自增前:" + +a);
    
            // 自增(后):++
            int age = 10;
            System.out.println("自增后,原来数值为:" + age++);   // 先打印10,再10+1=11
            System.out.println("自增后:" + age);               // 输出11
    
            // 自减(前):--
            System.out.println("自减前:" + --a);
    
            // 自减(后):--
            int num = 10;
            System.out.println("自减后,原来数值为" + num--);     // 先打印10,再10-1=9
            System.out.println("自减后:" + num);               // 输出9
    
            // 字符拼接:+
            char c = 'h';
            String d = "ello";
            System.out.println("字符拼接:" + c + d);
    
            /* 练习:求三位数长度的个个十百位数 */
            int number = 189;
            System.out.println("百位数为:" + number / 100);
            System.out.println("十位数为:" + number / 10 % 10);
            System.out.println("个位数为:" + number % 10);
    
            /* 自增其它数值 */
            int num1 = 10;
            num1 += 2;
            System.out.println(num1);
    
            /* 自增其它数值 */
            int num2 = 10;
            num2 -= 2;
            System.out.println(num2);
        }
    }

     练习:

    /* 练习:求三位数长度的个个十百位数 */

    public class a_number {
        public static void main(String[] args) {
            /* 练习:求三位数长度的个个十百位数 */
            int number = 189;
            System.out.println("百位数为:" + number / 100);
            System.out.println("十位数为:" + number / 10 % 10);
            System.out.println("个位数为:" + number % 10);
        }
    }

    百位数为:1
    十位数为:8
    个位数为:9

    2、比较与运算符

    public class a_compare {
        public static void main(String[] args) {
            int a = 10;
            int b = 10;
            System.out.println(a == b);
            System.out.println(a != b);
            System.out.println(a >= b);
            System.out.println(a <= b);
            System.out.println(a < b);
            System.out.println(a > b);
            System.out.println(a = b);
        }
    }

    3、逻辑运算符

    逻辑运算符用于连接布尔型表达式

    “&”和“&&”的运算的结果都相同,区别:
    • &时,左边无论真假,右边都进行运算;
    • &&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。
    “|”和“||”的运算的结果都相同,区别同理,||表示:当左边为真,右边不参与运算。
    public class a_compare {
        public static void main(String[] args) {
            /*
            2、逻辑运算1
            且:&
            或:|
            非:!,取反
            异或:^
            */
            boolean i = true;
            boolean o = false;
            System.out.println(i & i);
            System.out.println(o | i);
            System.out.println(!o);       // 取反,原本o为false,取反变为true
            System.out.println(i ^ i);    // 异或,两值相同时为flase
            System.out.println(i ^ o);    // 异或,两值不相同时为true
    
            // 异或,类似且的取反,如下:
            System.out.println(!(i & i));
            System.out.println(!(i & o));
    
            /*
            2、逻辑运算2
            短路,且:&,值有一个为false,那全部为false,当值全为true时才为true
            短路,或:|,值有一个为true,那就为true,当值全为false时才为false
            */
            boolean aa = true;
            boolean bb = false;
            System.out.println(aa && bb);
            System.out.println(aa || aa);
        }
    }

     4、位运算符

    位运算是直接对整数的二进制进行的运算,开发过程中个人认为不是很常用;
    public class BitTest {
        public static void main(String[] args) {
            int a = 2;
            int b = 8;
            //面试题:最高效方式的计算2* = 8,  2 << 3 或8 <<1
            // 相当于每向左移一位就 * 3
            System.out.println("a << 2 :" + (a << 3));
    
            // 相当于每向右移一位就 / 2
            System.out.println("a >> 2 :" + (b >> 2));
    
            int c = 12;
            int d = 5;
            System.out.println("c & d:" + (c & d));
            System.out.println("c & d:" + (c | d));
            System.out.println("c & d:" + (c ^ d));
        }
    }

     5、三元运算符

     结构:(条件表达式)? 表达式1:表达式2

    结果为布尔类型;

    public class a_San {
        public static void main(String[] args) {
            // max:取最大值
            int a = 5;
            int b = 10;
            int max = (a > b) ? a : b;
            System.out.println(max);
    
            // 嵌套
            String maxStr = (a > b) ? "a大" : ((a == b) ? "ab相等" : "b大");
            System.out.println(maxStr);
    
            // 求三个数的最大值
            int c = 11;
            int maxSan = ((a > b) ? a : b) > c ? ((a > b) ? a : b) : c;
            System.out.println(maxSan);
        }
    }

    三、逻辑判断

    1、格式一:if

    if (条件){

      执行表达式

    }

    2、格式二:if else

    if (条件){

      执行表达式

    }else{

      执行表达式

    }

    3、格式三:if...else if ... else

    if (条件){

      执行表达式

    }else if{

      执行表达式

    }else{

      执行表达式

    }

    public class If {
        public static void main(String[] args) {
            int a = 1;
            int b = 2;
            // 第一种
            if (a < b) {
                System.out.println("a<b");
            }
    
            // 第二种
            if (a > b) {
                System.out.println("a>b");
            } else {
                System.out.println("a<b 且a!=b");
            }
    
            // 第三种
            if (a > b) {
                System.out.println("a>b");
            } else if (a == b) {
                System.out.println("a==b");
            } else {
                System.out.println("a<b 且a!=b");
            }
        }
    }

    最后欢迎来大家QQ交流群一起学习:482713805

  • 相关阅读:
    【转载】两军问题与Paxos算法 & 动画讲解Paxos算法
    hdu4611 Balls Rearrangement
    [置顶] github简单使用
    set与map容器
    [置顶] C++为什么是C++而不是++C
    HDU 4616 Game (搜索)、(树形dp)
    Just learn how to use the JNI
    HDU 4611 Balls Rearrangement (数学-思维逻辑题)
    冒泡排序改进
    Python基础
  • 原文地址:https://www.cnblogs.com/gsxl/p/14064404.html
Copyright © 2011-2022 走看看