JAVA学习之旅第二天-常量与变量

一、常量

1、声明常量

语法:final 数据类型(如int) 常量名 = 值
规范:常量名通常全部大写,常量初始化后不可再次赋值
意义:用有意义的变量名来避免魔术数字,
package Demo;

/**
 * @className:TestFinal;
 * @time:2022-03-06-17:28;
 * @author:Lee Ye;
 * @description:这是一个java示例;
 */
public class TestFinal {
    static final int YEAR = 2022;
    //定义常量在main函数内外都可以
    //在main函数外定义要加个static,在main函数里定义常量就不用加static
    public static void main(String[] args){
        System.out.println("今年是"+YEAR+"年!");
    }
}

二、变量

1、声明变量

​ 定义:第一次定义变量时,要指定变量类型(int等)

2、变量作用范围

​ 分类:成员(全局)变量和局部变量

​ 2.1、成员变量

​ 在类中定义的变量,作用范围为整个类,相当于python的全局变量

​ 2.2、局部变量

​ 在方法或者代码块中定义的变量

​ 特点:局部变量在方法或代码块被执行的时候创建,在结束的时候被销毁

package Demo;

/**
 * @className:TestVar;
 * @time:2022-03-06-18:09;
 * @author:Lee Ye;
 * @description:这是一个java示例;
 */
public class TestVar {
    static int k = 1;   //这里的k就是成员变量-在类中定义的
    public static void main(String[] args){
        int a = 1;      //在方法中定义变量
        //在块中定义变量
        {
            int b = 2;
            System.out.println("a is :" + a);
            System.out.println("b is :" + b);
        }
        int b = 3; //因为b在代码块执行完就销毁了,所以可以重新定义
        System.out.println("a is :" + a);
        System.out.println("b is :" + b);

    }
}

​ 2.3、成员变量与局部变量的关系

​ 他们两个的调用服从就近原则

package Demo;

/**
 * @className:TestVar;
 * @time:2022-03-06-18:09;
 * @author:Lee Ye;
 * @description:这是一个java示例;
 */
public class TestVar {
    static int var = 1;
    public static void main(String[] args){
        int var = 2; //局部变量,调用完就销毁了,所以test找到的是成员变量var
        System.out.println("var is :" + var);
        test();
    }
    public static void test(){
        System.out.println("var is :" +var);
    }
}

拓展:

java中作用范围禁止嵌套

//##错误示例
public static void main(String[] args){
	int a = 1;
	{
		int a = 2;
		System.out.println("a = " + a);
	}
}

三、练习

实现打印九九乘法表
package Demo;

/**
 * @className:TestVar;
 * @time:2022-03-06-18:09;
 * @author:Lee Ye;
 * @description:这是一个java示例;
 */
public class TestVar {
    public static void main(String[] args){
        for(int i = 1; i <= 9; i++){
            for (int j = 1; j <= i; j++)//正向打印
            //for (int j = i; j <= 9; j++) //反向打印
            {
                System.out.printf("%d x %d = %2d ", i, j, i * j);
            }
            System.out.println();
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值