JAVA基础day02

Java基础——Day02

0.回顾

1.Java发展史---了解高斯林

2.Java开发环境搭建 --- 实操

    Windows环境【本地开发环境】、Linux【从0到1,小概率事件

3.HelloWorld的一些注意点 ---实操

4.3大注释 --- 使用

5.8大基本类型 ---掌握

6.跨平台的原理---了解

7.JavaSE -》J2SE、JavaEE、JavaME

8.Java能搞什么

9.变量和常量

10.键盘输入:Java基础语法这几天只要掌握如何使用即可

​​​​​​​0.1.变量的命名规范

1.组成部分:字母、下划线、$、数字 【字、下、美、人、数】

2.不能是关键字,可以包含关键字,比如myClass

3.不能以数字开头

4.小驼峰命名规则

0.2常量的命名规范

  1. 常量名都大写: PI , month ×
  2. 多个单词组成,一般使用_ 分割, MY_RATE

​​​​​​​1.数据类型转换

JAVA基础day02

了解的常用编码格式:

【硬性要求】

    使用字符,请使用字符本身,不允许使用字符对应的编码!!!

GBK:

    新国标,包含了简体中文所有的文字,以及少数民族文字

GB2312:

    老国标,包含了简体中文所有的文件,以及一部分少数民族文字

BIG5:

    中文繁体字编码集,主要用于中国*,中国香港,中国澳门,新加坡

UTF-8:

    万国码,包含了所用国家的文字,也是开发中使用最多的编码,IDEA,MySQL HTML5 ASCII:

  美国标准什么什么协会,闲着没事做的编码,然后觉得很low,就开始凑数!!!

原码、反码、补码

注意:负数

正数:三码合一

十六进制、八进制、二进制分别是什么,以及如何转换

2.运算符

2.0赋值运算符

= :赋值

2.1算术运算符

+、-、*、/、%

注意: a++,++a

//a++、++a的区别

//独立一行一句,没有区别,都是对a进行+1,等效于 a = a + 1

//若在其他语句【赋值、表达式、输出语句。。。】中使用,则符合下面的规律

//a++:先用,后+1

//++a:先+1,后使用

键盘输入一个四位数,计算每个位数之和 例如6789 6+7+8+9

import java.util.Scanner;
public class Test05{
    public static void main(String[] args)
    {
        //键盘输入一个四位数,计算每个位数之和 6789 6+7+8+9
        Scanner input = new Scanner(System.in);
        System.out.println("请输入一个四位数");
        int a=input.nextInt();
        int b=a/1000;
        int c=a/100-10*b;
        int d=a/10-100*b-10*c;
        int e=a-1000*b-100*c-10*d;
        int f=b+c+d+e;
        System.out.println("各位之和为"+f);
        
    }

}

JAVA基础day02

2.2比较运算符

>、>=、<、<=、==、!=

它的结果是boolean类型

2.3逻辑运算符

&-短路与、&、||-短路或、| 、!-取反

对于短路与:若左边的结果为false,它就可以决定整个表达式的结果,此时逻辑运算符右边的表达式就不用计  算了

对于短路或:若左边的结果为true,它就可以决定整个表达式的结果,此时逻辑运算符右边的表达式就不用计  算了

对于非短路:无论左边的结果为true还是false,都要计算右边的结果 开发中,使用的基本上是短路

2.4复合运算符

// += -= *= /= %=  

d += 1; //a = a + 1

byte e = 50;

//byte f = e + 1; 编译不通过

e +=1; //编译通过,帮我们转换了类型

2.5位运算符

//位运算:如何高效的实现2*8 = 16 幂 mi

// 16 / 4 = 4

System.out.println(2 << 3);

System.out.println(16 >> 2);

左移运算符"<<"是双目运算符。左移n位就是乘以2的n次方。 其功能把"<<"左边的运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0。

右移运算符">>"是双目运算符。右移n位就是除以2的n次方

其功能是把">>"左边的运算数的各二进位全部右移若干位,">>"右边的数指定移动的位数。
————————————————
版权声明:本文为CSDN博主「zoeLcjy」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43624737/article/details/116701770

2.6三元运算符

语法:

表达式?结果1:结果2

注意:三元运算符必须有一个变量来接收它的结果;它的结果的数据类型,取决于你结果1和结果2的数  据类型

举例:

<!--键盘输入数学成绩和英语成绩,若英语成绩高于数学成绩,则打印英语好、数学差-->

    import java.util.Scanner;
public class Test05{
    public static void main(String[] args)
    {
        //键盘输入数学成绩和英语成绩,若英语成绩高于数学成绩,则打印英语好、数学差
    Scanner input = new Scanner(System.in);
    System.out.println("请输入数学成绩");
    double a=input.nextDouble();
    System.out.println("请输入英语成绩");
    double b=input.nextDouble();
    String d= (a<b?"英语好数学差":"英语差数学好");
    System.out.println("结果:"+d);
    }
}

3.分支结构

明确:生活中处处有选择,即分支

程序就是为了解决生活问题,如何使用代码去解决这种选择的难题。

3.1if分支

在整个if分支结构中,else是可选的,你根据自己的情况去选择

3.1.1单分支

造句:如果.....boolean值,就 【要干的事情】

if(boolean表达式)
{
语句块
}

需求:如果你今天迟到,明天就请大家吃包子;不迟到,那是你的职责

3.1.2双分支

if(boolean表达式) {

语句块;

} else {

}

JAVA基础day02

补充:随机数

//产生随机数,Math.random() ,产生的是[0,1)的double类型的数

//计算 [23,56]这个范围的整数,怎么搞 (int)(r*34 + 23) -> (int)(r*[end-start+1] + start) double r = Math.random();

System.out.println(r); if(boolean值){

 

} else {

}

3.1.3多分支

使用多重if的时候,要注意每个条件的顺序问题,虽然语法没有错误,乱放的话,可能不符合我们  的期望的结果。

对于多分支情况,可以使用多个if,但是多个if有个问题,即每个if都要判断一次,效率较为低下。  我们期望的是匹配到一个分支之后,就结束这个流程。

语法:

if(条件1){

语句1;

} else if(条件2) {

语句2;

} else if(条件3) {

语句2;

} else {

 

}

 

需求:买彩票,中1一个亿,[0-1w),[1,50w),[50,100),[100,正无穷)

JAVA基础day02

练习:

   1.输入月份,判断该月份属于哪个季度

   2.输入数字,掷骰子,根据3个骰子的和去判断,是豹子还是大或者小 ,定义三个变量a b c

public class Test08{
    public static void main(String[] args) {
        //输入月份,判断该月份属于哪个季度
        int month = 2;
        if(month >= 1 && month <=3) {
            System.out.println("1......");
        } else if(month >=4 && month <=6) {
            System.out.println("2.......");
        }
        
        System.out.println("-==========================");
        System.out.println("请押宝:大、小、豹子");
        //你要从键盘输入
        String input = "大";
        int a = (int)(Math.random()*6+1);
        int b = (int)(Math.random()*6+1);
        int c = (int)(Math.random()*6+1);
        
        int sum = a + b +c;
        
        String result = "";
        
        if(a==b && b==c) {
            System.out.println("系统产生的结果为豹子");
            result = "豹子";
            if(input.equals(result)) {
                System.out.println("压对了.....");
            } else {
                System.out.println("压的不对");
            }
        } else if(sum >= 12) {
            System.out.println("系统产生的结果为大");
        } else {
            System.out.println(">>>>>>>>>>>>");
        }
    }
}

3.1.4嵌套if

对于嵌套if,一般建议2-3层

if(条件) {

if(条件) {

 

} else {

 

}

}

例子:转行大数据【是否学大数据   y/n,键盘输入】,若学习的话,选择哪家培训机构A、B、C【键盘输入】;不学的话,依然干老本行

JAVA基础day02

 

 

 

 

 

上一篇:学习Java.Day02


下一篇:MySQL编程(0) - Mysql中文乱码问题解决方案