Java学习之路0715(二)(变量的使用、声明,赋值,运算符,控制语句)

1、变量的使用
1、声明变量,即根据数据类型在内存中申请存储空间
2、赋值
2、变量命名规则
要求简洁,首字母以字母、下划线_、美元符$,后面可以是字母、下划线、美元符任意组合,变量名须是名词,且第一个单词首字母小写,后续单词首字母大写。具体参照驼峰命名法(下划线,美元符有特殊意义)

基本数据类型的分类

3、运算符
算术运算符:+、-、*、/(取整)、%(取余数)
递增递减运算符:i++、i–、++i、–i。(前者是先使用i的值再执行自增自减,后者是先执行自增自减,再使用i的值。例如:int i=2;int j=i++;输出的j=2,i=3;int j=++i;j=3,i=3)
赋值运算符:=、+=、-=、*=、/=
public class HelloWorld {
    public static void main(String[] args) {
        int i=2;
        int j=3;
        int k=i/j;//k=2
        k=i++;//k=2,i=3
        k=++i;//k=3,i=3
        j+=i;//j=5
        System.out.print(k);
    }
}

关系运算符:>、>=、<、<=、==、!=
逻辑运算符:&&、||、!(短路与、或、非)
使用&&时,当第一个表达式为false时不会去判断后面的表达式;
使用||时,当第一个表达式为true时不会去判断后面的表达式。

public class Test5 {
    public static void main(String [] args){
        boolean b1=true;
        boolean b2=false;
        if(b1&&b2){            //输入的会是2
            System.out.println("1");
        }else{
            System.out.println("2");
        }
        if(b1||b2){             //输入的会是1
            System.out.println("1");
        }else{
            System.out.println("2");
        }
    }
}

这里写图片描述

&&和& 的区别就是当有多个表达式时,遇到第一个为false时,后面的表达式就不在进行判断,同样||和|的区别是遇到第一个为true时,后面的表达式就不在进行判断

三目运算符:表达式1:?:表达式2(Java中不允许使用,不方便阅读)

public class Test5 {
    public static void main(String [] args){
        int j=2;
        int k=3;
        int i=0;
        i=(k<j)?1:2;    //当?前面的表达式为true时,执行:前的,否则执行:后面的
        System.out.println(i);//输入的i=2
    }
}

位运算符:&、|、^(异或)、~(非)
&为按位与,|为按位或
这里写图片描述
移位运算符:>>(向右移位)、<<(向左移位)、>>>(无符号向右移位)
*、/、%同级运算
浮点数可以除零,整型运算不能

整数取模,浮点数取模,余数取模
a%b=a-(a/b)整数取模 a%b=a-(b*q) q=int(a/b)

Java程序控制语句

Java程序控制语句分为顺序语句,分支语句(if ···else···,switch···case),循环语句(for,while,do···while)
if···else···的用法

import java.util.Scanner;
/**
 * 我的第一个Java程序
 * @author jie
 *
 */
public class HelloWorld {

    public static void main(String[] args) {
        int score ;
        Scanner scanner=new Scanner(System.in);
        score=scanner.nextInt();//这里会发生阻塞,等待
        if(score>=95){
            System.out.println("奖励 iPhone6s Pro");
            if(score>=98){
                System.out.println("塞班岛一日游");
            }else if(score==100){
                System.out.println("马尔代夫双日游");
            }
        }
        else if(score>=60){
            System.out.println("考试通过");
        }
        else{
            System.out.println("下次努力");
        }
    }
}

switch··· case···
这里写图片描述

import java.util.Scanner;;
public class Test1 {
    public static void main(String[] args){
        int score;
        Scanner scanner=new Scanner(System.in);
        score=scanner.nextInt();
        switch(score/10){
        case 10:
            System.out.println("满分");
            break;
        case 9:
            System.out.println("优秀");
            break;
        case 8:
            System.out.println("良好");
            break;
        case 7:
            System.out.println("中等");
            break;
        case 6:
            System.out.println("及格");
            break;
        default:
            System.out.println("挂科");
            break;
        }       
    }
}

三种循环语句
这里写图片描述

public class Test2 {
    public static void main(String[]agrs){
        int i=0;
        int s=0;
        //for循环
        for(;i<=1000;i++){
            s+=i;
        }
        System.out.println("for循环"+s);
        //while循环
        i=0;
        s=0;
        while(i<=1000){
            s+=i;
            i++;
        }
        System.out.println("while循环"+s);
        //do···while循环
        i=0;
        s=0;
        do{
            s+=i;
            i++;
        }while(i<=1000);
        System.out.println("do···while循环"+s);
    }
}

计算1000以内水仙花数的个数,例如:153=1*1*1+5*5*5+3*3*3

public class Test3 {
    public static void main(String [] args){
        int a=0;
        int b=0;
        int c=0;
        int s=0;
        int j=0;
        for(int i=100;i<1000;i++){
            a=i/100;
            b=i%100/10;
            c=i%10;
            s=a*a*a+b*b*b+c*c*c;
            //System.out.println(i+" "+a+" "+b+" "+c+" "+s);
            if(s==i){
                j++;
                System.out.print(i+" ");
            }
        }
        System.out.println("1000以内的水仙花数有"+j+"个");//153 370 371 407 1000以内的水仙花数有4个
    }
}

给出一个计算给出一个随机整数,求其二进制情况下这个数有多少个1?

import java.util.Scanner;;
public class Test4 {
    public static void main(String[] args){
        Scanner scanner=new Scanner(System.in);
        //int a=scanner.nextInt();
        int count=0;
        /*int i;
        for(int j = 0;j<32;j++){
            if(i%2==1){
                //最后一位是1
                count++;
            }
            i=i>>1;//i>>=1
        }
        System.out.println(count);*/

        int k=scanner.nextInt();
        //int count=0;
        while(k!=0){
            if(k%2==1){
                count++;
            }
            k=k/2;
        }
        System.out.println(count);
    }
}

在循环语句中break与continue的区别:
break是跳出循环,不再执行循环运算,continue是指跳出本次循环,不再执行本次循环continue后面的语句,接着执行下一次循环


public class Test6 {
    public static void main(String[] args){
        for(int i=0;i<=10;i++){
            System.out.print("第"+i+"次循环"+"  ");
            if(i==5){
                System.out.println(i+"未跳出循环");
                break;
            }
            else if(i==3){
                System.out.println(i+"跳出本次循环");
                continue;
            }
            System.out.println("给糖吃");
        }
    }
}

这里写图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值