人生苦短我学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

原文地址:https://www.cnblogs.com/gsxl/p/14064404.html