第一个java程序及基本语法

/*
 * java的基本语法:
 * 1.类名必须和文件名一致
 * 2.public:访问修饰符
 * 3.class:定义类的关键字
 * 4.类名:首字母大写,不要使用拼音或者中文,驼峰式命名法,每个单词的首字母大写
 * 5.main方法是Java程序的入口,需要执行的代码必须放到main方法里面,后期学了JavaEE用的不是太多了
 * 6.Java语言严格区分大小写 int a,int A;
 * 7.Java方法由一条条语句构成,每个语句以“;”结束
 * 8.大括号都是成对出现的,缺一不可
 * 9.一个Java文件里面可以定义多个类,但是只能有一个类名的访问修饰权限为public
 * 
 * 
 * 什么是关键字?
 * Java给我们定义了一些特殊单词,每个关键字都有自己独有的功能
 * 1.全是小写
 * 2.关键字不能当做普通的标识符
 * 
 * 什么是标识符?
 * 自定义的类,方法名,包名,变量名,接口名......这些统称标识符
 * 1.字母,数字,下划线$
 * 2.不能以数字开头
 * 3.不能是关键字,或者包含特殊字符
 */

public class HelloWorld {
      public static void main(String[] args){
          System.out.println("HelloWorld");
      }
}


 

//新建一个Demo1类,常量的例子

public class Demo1 {

    public static void main(String[] args) {
/*
 * 什么是常量?程序运行期间,固定的值是不可以改变的
 */
        //final关键字表示不可变
        final int A=10;
        //整数
        System.out.println(100);
        //字符串
        System.out.println("我爱学习");
        //小数
        System.out.println(3.14);
    }

}

 

//新建一个Demo2的类,变量的例子

/*
 * 1.什么是变量?
 * 在内容中的一块区域,变量的值可以在某一个范围内发生改变
 * 2.怎么定义变量?
 * 变量类型  变量名;int num;
 * 变量类型  变量名=对应的变量值;int num=10;
 * 3.变量的类型有哪些呢?
 * 基本数据类型
 * 整数 byte short int long 常用的是int
 * 小数 double float 常用的是double
 * 布尔 boolean 常用在逻辑运算
 * 字符 char
 * 
 * 引用数据类型:数组  Java定义的类 自己定义的类 接口......
 * 
 * 4.变量的分类
 * (1)成员变量:定义在类的内部,方法之外,可以在当前类的内部使用
 * (2)局部变量:定义在方法内部,只能在当前方法内部使用
 */

//新建一个类Demo2,成员变量和局部变量的区别

public class Demo2 {
    //成员变量
    static  int num=10;//在静态方法里面只能调用静态变量或者静态方法
    public static void main(String[] args) {
        //局部变量
        int num1=20;
        System.out.println("num:"+num);
        System.out.println("num1:"+num1);
    }
public void show(){
    System.out.println("num:"+num);

//这句是有错误的,因为获取不到在main方法中声明的局部变量num1
    System.out.println("num1:"+num1);
}
}

//新建一个类Demo3,八种基本类型的创建格式,不同类型之间的转换方法

public class Demo3 {

    public static void main(String[] args) {
        /*
         * java的基本类型
         * 八种:byte short int long float double char boolean
         * js是弱类型语言  Java是强类型语言
         */
        
        //1.byte的范围 -128一127
        //b=128;右边的赋值数字不能超过左边数据类型的范围
        byte b=120;
        System.out.println("B:"+b);
        //如果要定义成long类型,后面必须加上大写的L或者小写的l
        long l=1000L;
        System.out.println("L:"+l);
        
        //2.小数
        double d= 10;
        System.out.println("d:"+d);
        //float值必须加上大写的F或者小写f
        float f=12F;
        System.out.println("f:"+f);
        
        //3.字符型,字符型不能为空,字符串可以为空,字符用单引号,字符串用双引号
        char c='a';
        System.out.println("c:"+c);
        
        //4.布尔类型 只有两个值 true false
        boolean b1=true;
        System.out.println("b1:"+b1);
        
        /*
         * 类型转换
         * 1.自动类型转换:把小的放到大的里面
         * 2.强制类型转换:把大的放到小的里面
         * 3.把字符串类型转换成其他数据类型(使用对应包装类的parsexxx()方法)
         */
        System.out.println("==============");
        short s=10;
        //把小的(short类型)转换成大的(int类型),可以自动类型转换
        int num =s;
        System.out.println("num:"+num);
        
        int num1=20;
        //把大的数据类型转换成小的数据类型,需要强制类型转换
        //需要转成什么类型,在变量前面加上该类型就可以了
        short s1=(short)num1;
        System.out.println("s1:"+s1);
        
        System.out.println("==========================");
        //把字符串转成int类型,转换有前提,字符串的值不能包含中文
        String str="123";
        //每一个基本数据类型都有自己对应的包装类,每个包装类里面都封装了对应的转换方法
        //Integer是int类型的包装类
        int num2=Integer.parseInt(str);//把字符串转成了int
        System.out.println("num2:"+num2);
        
        //把字符串转成double
        String str1="456";
        double dob=Double.parseDouble(str1);
        System.out.println("dob:"+dob);
        
        //把int类型转成字符串
        int num3=110;
        String str2=num3+"";
        System.out.println("str2:"+str2);
        
        //第二种方式
        int num4=120;
        //转成什么类型,那么就去String类里面找方法
        String str3=String.valueOf(num4);
        System.out.println("str3:"+str3);
        
        //转义\n表示换行
    System.out.println("我是\n中国人");
        
    }

}

//Demo3运行结果

 

//创建一个类Demo4,表示算术运算,自加自减符号前后的异同/*
 * 算术运算符
 * +
 * -
 * *
 * /
 *%
 *
 *1.自增运算++ 在原有的基础上,累加1
 *2.自减运算 --  在原有的基础上,累减1
 *
 *使用格式:
 * 可以在变量前面使用++  ++num
 * 可以在变量后面使用++  num++
 * 
 * 前后有啥区别?
 * 1.如果单独使用的话,没有任何区别
 * 2.混合使用
 * (1).如果是后++,先使用变量的值,然后在+1,先用后加
 * (2),如果是前++,变量的值会立马+1,如果拿着累加的值进行使用,先加后用
 */

public class Demo4 {

    public static void main(String[] args) {
                //加
                //作用在数字上面,求和
                int num=10;
                int num1=20;
                System.out.println(num+num1);
                
                //作用在字符上面,不是求和,而是两个字符串拼接
                String str="尼古拉斯赵四";
                int num2=20;
                System.out.println(str+num2);
                
                System.out.println("==================");
                int number=10;
                ++number;//单独使用
                System.out.println(number);
                
                int number1=10;
                number1++;//单独使用
                System.out.println(number1);//11
                
                System.out.println("====================");
                int a=10;
                System.out.println(++a);//11
                
                int b=10;
                System.out.println(b++);//10
                
                int d=10;
                int e=10;
                int f=(d++)+(++d)+(d--)+(--e)+(e++)+(++e);
                      //10+12+12+9+9+11
                System.out.println(f);
                
                int j=12;
                int h=16;
                int sum=(--j)+(h--)+(j++)+(++h)+(j--)+(++j);
                      // 11+16+11+16+12+12
                System.out.println(sum);

            

    }

}

//Demo4运行结果

 

新建一个类Demo5,运算操作简写/**
 *  赋值运算符:就是把右边的值赋值给左边的变量
 *  = :不是相等的意思,赋值
 *  += : a=a+b;可以简写成a+=b,
 *  -=
 *  *=
 *  /=
 *  %=
 *
 */

public class Demo5 {

    public static void main(String[] args) {
        int a=10;
        int b=10;
//        a=a+b; 可以简写,功能相同
        a+=b;
        System.out.println(a);

    }

}

//Demo5运行结果

 

 

创建一个类Demo6,基本数据类型的比较/**
 * 比较运算符:比较两个变量值  只是针对于基本数据类型进行比较
 * 比较后只能是Boolean,要么为true要么为false
 * == 比较两个值是否相等
 * >
 * <
 * !=
 * >=
 * <=
 *
 */

public class Demo6 {

    public static void main(String[] args) {
    int a=20;
    int b=30;
    System.out.println(a==b);//false

    }

}

//Demo6运行结果

 

类Demo7,逻辑运算符/**
 * 逻辑运算符
 * &(并且):所有的条件都为true,返回true,如果其中有一个为false,就为false
 * |(或者):只要有一个为true,就返回true,如果都为false,返回false
 * ^(异):相同为false,不同为true
 * !(非):本来是false改成true
 * 
 * 逻辑运算符 &和|可以双写
 * 单写和双写有什么区别呢?
 * 1.短路与:如果左侧已经可以判断最终结果了,那么后面的判断将不会再被执行
 * 以后开发使用短路与,因为它的开发执行效率高
 *
 */

public class Demo7 {

    public static void main(String[] args) {
        boolean a=true;
        boolean b=false;
        System.out.println(a&b);//false
        System.out.println(4>3|7<2);//true
        System.out.println(true^true);//false
        System.out.println(!true);//false
        
        System.out.println("==========区别==============");
        int num=10;
        System.out.println(3>4 & ++num>5);
        System.out.println(num);//11
        
        int num1=10;
        System.out.println(3>4 && ++num1>5);
        System.out.println(num1);//10
        
        System.out.println("==============");
        int num2=10;
        System.out.println(4>3 | ++num2<10);
        System.out.println(num2);//11
        
        int num3=10;
        System.out.println(4>3 || ++num3<10);
        System.out.println(num3);//10
        

    }

}

Demo7的结果

 

类Demo8,三元运算,两个数的值的交换

public class Demo8 {

    public static void main(String[] args) {
        /**
         * 三元运算符:
         * 条件表达式?表达式1:表达式2
         * 如果条件表达式为true,执行表达式1
         * 如果条件表达式为false,执行表达式2
         */
        
        //定义两个整数,判断a是否大于b,如果大于b,输出a大,相反输出b大
        int a=100;
        int b=200;
        //创建一个String的容器来存放输出的结果信息
        String result= (a>b)?"a大":"b大";
        System.out.println(result);
        
        //实现两个变量值的互换
        int m=6;
        int n=5;
        int t;
        t=m;
        m=n;
        n=t;
        System.out.println("m:"+m);
        System.out.println("n:"+n);
        
    }

}

Demo8的运行结果

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值