Java入门基础学习(第二天)

一、变量:是用来记住程序处理的数据的。

定义格式:数据类型    变量名称   = 数据;

public class variableDemo1 {
    public static void main(String[] args) {
        //1.定义一个整数变量记住一个整数
        //数据类型 变量名称 = 数据;
        //注意: = 在java中是赋值的意思,从右边往左看
        int age=23;
        System.out.println(age);
        //2.记住一个人的成绩
        double score=99.5;
        System.out.println(score);

        //3.使用变量的好处,便于扩展和维护

        int number=888;
        System.out.println(number);
        System.out.println(number);
        //4.变量的特点,里面的数据可以被替换
        int age2 =18;
        System.out.println(age2);
        age2=19;//赋值从右往左边执行
        System.out.println(age2);
        age2=age2+1;//赋值从右往左边执行
        System.out.println(age2);
    }
}

 运行结果:

二、字符数据在计算机是怎么存的?、

字符存的是ASCII码表中对应的数字二进制形式

图片和音视频也采用二进制进行存储

public class ASCIIDemo1 {
        public static void main(String[] args) {
        //目标,掌握ASCII编码表的编码特点
                System.out.println('a'+10);//97+10=107
                System.out.println('A'+10);//65+10=75
                System.out.println('0'+10);//48+10=58

                //二进制、八进制、十六进制在程序中的写法
                int a1=0B01100001;
                System.out.println(a1);

                int a2=0141; //0开头的数据当成八进制看待
                System.out.println(a2);
                int a3=0XFA;  //0X开头的数据是十六进制
                System.out.println(a3);
        }

}

运行结果:

二进制:

十进制数转二进制数:除二取余法。

二、数据类型 

基本数据类型:整型:byte,short ,int(默认),long(用它加L/l)

                         浮点型:float, double(默认)

                         字符型:char

                         布尔型:boolean

引用类型:String

自动类型转换:类型范围小的可以直接赋值给类型范围大的变量。

byte---short----int-----long---float----double (char(2)---int(4)

public class typedemo {
    public static void main(String[] args) {
        //目标;理解自动类型转换机制
        byte a=12;
        int b=a;//发生了自动类型转换
        System.out.println(a);
        System.out.println(b);

        int c=100;//4
        double d=c;//8 发生了自动类型转换
        System.out.println(d);

        char ch='a';//'a' 97==>00000000 01100001
        int i=ch; //发生了自动转换==>00000000 00000000 00000000 01100001
        System.out.println(i);
    }
}

运行结果:

表达式的自动类型转换

byte,short,char,----int-----long---float----double 

注意:表达式的最终结果类型由表达式中的最高类型决定。

在表达式中,byte,short,char是直接转换成int类型参与运算的

public class typedemo2 {
    public static void main(String[] args) {
        //目标掌握表达式自动转换类型机制
        byte a=10;
        int b=20;
        long c=30;
        long rs=a+b+c;
        System.out.println(rs);

        double rs2=a+b+1.0;
        System.out.println(rs2);

        byte i=10;
        short j=30;
        int rs3=i+j;
        System.out.println(rs3);

        //面试题
        byte b1=10;
        byte b2=90;
        int b3=b1+b2;
        System.out.println(b3);
    }
}

运行结果:

强制类型转换

大范围类型变量====>小范围类型变量

数据类型  变量2=(数据类型)变量1、数据

注意:强制类型转换可能造成数据丢失

浮点型强转成整型,直接丢掉小数部分,保留整数部分返回

public class typedemo3 {
    public static void main(String[] args) {
        //目标,掌握强制类型转换
        int a=20;
        byte b= (byte) a;//报错选(alt+enter),强制类型转换
        System.out.println(a);
        System.out.println(b);

        int i=1500;
        byte j= (byte) i;
        System.out.println(j);

        double d =99.5;
        int e= (int) d;//强制类型转换
        System.out.println(e);//丢掉小数部分,保留整数部分
    }
}

运行结果:

自增自减

public class lx1 {
    public static void main(String[] args) {
        int i=10;
        int rs=++i;//先加后用
        System.out.println(rs);
        System.out.println(i);


        int j=10;
        int rs2=j++;//先用后加
        System.out.println(rs2);
        System.out.println(j);
    }
}

运行结果:

扩展赋值运算符

public class lx2 {
    public static void main(String[] args) {
        //掌握扩展赋值运算符的使用
        //+=
        //需求:收红包
        double a=9.5;
        double b=10;
        a+=b; //a=(double)(a+b)
        System.out.println(a);

        int m=10;
        int n= 2;
        m*=n;//m=(int)(m*n)
        System.out.println(m);
    }
}

运行结果:

逻辑运算符

public class lx3 {
    public static void main(String[] args) {
        //目标掌握逻辑运算符
        //需求:要求手机必须满足尺寸大于等于6.95,且内存必须大于等于8
        double size=6.8;
        int storage=16;
        //1.& 前后的结果必须都是true 结果才是true
        boolean rs=size>=6.95 &storage >=8;
        System.out.println(rs);

        //需求:要求手机必须满足尺寸大于等于6.95,且内存必须大于等于8
       //2. | 只要多个条件中有一个是true,结果就是true
        boolean rs2=size>=6.95 | storage >=8;
        System.out.println(rs2);

        //3. ! 取反
        System.out.println(!true);//false
        System.out.println(!false);//true
        System.out.println(!(2>1));//false

        //4. ^ 异或 前后的结果相同时返回false ,不同时返回true
        System.out.println(true ^true);//false
        System.out.println(false^false);//true
        System.out.println(true^false);//true
        System.out.println(false^true);//true

        //5.&& 左边为false,右边不执行
        int i=10;
        int j=20;
        System.out.println(i>100 && ++j>99);//左边为false,所以不执行 j=20
        System.out.println(i>100 & ++j>99);//false  j+1=21
        System.out.println(j);

        //6.||  左边为true,右边不执行
        int m=10;
        int n=30;
        System.out.println(m>3|| ++n >40);//左边为true ,右边不执行  n=30
        System.out.println(m>3  | ++n >40);//左边为true,还是会执行 n=n+1  n=31
        System.out.println(n);

    }
}

运行结果:

三元运算符

public class lx4 {
    public static void main(String[] args) {
        //目标:掌握三元运算符
        double score=98.5;
        String rs=score>=60 ? "成绩及格":"成绩不及格";
        System.out.println(rs);

        //需求:找出2个整数中的较大值,并输出
        int a=99;
        int b=67;
        int max=a>b?a:b;//真前假后
        System.out.println(max);

        //3.找出2个整数中的较大值,并输出
        int i=10;
        int j=45;
        int k=35;
        //找出2个整数中的较大值
        int temp=i>j ? i:j;
        //找出temp和k中的较大值
        int max2=temp>k?temp:k;
        System.out.println(max2);

        System.out.println(10>3 || 10>3 && 10<3);//true  &&的优先级大于||
        System.out.println((10>3 || 10>3) && 10<3);//false  先执行()()的优先级最高
    }
}

运行结果:

使用Scanner接受用户就键盘输入的数据

import java.util.Scanner;
public class lx5 {
    public static void main(String[] args) {
        //1.导包 ,一般不需要自己做,idea工具会自动帮助导包
        //2.抄写代码,得到一个键盘扫描器对象
        Scanner sc=new Scanner(System.in);

        //3.开始,调用sc的功能,来接收用户键盘输入的数据
        System.out.println("请输入你的年龄:");
        int age =sc.nextInt();//执行到这儿,会开始等待用户输入一个整数,直到用户按了回车键,才会拿到数据
        System.out.println("你的年龄是:"+age);

        System.out.println("请输入你的名字:");
        String name=sc.next();//执行到这儿,会开始等待用户输入一个字符串,直到用户按了回车键,才会拿到数据
        System.out.println(name+"欢迎你进入系统——————————————");

    }
}

运行结果:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不会下雨的~云

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值