Java语言基础 (一) java开发环境 变量 8种基本数据类型及转换 Scanner 运算符 分支 循环结构

第一天:
Java开发环境:

  1. java编译运行过程:---------常见面试题
    1)编译期: .java源文件,经过编译,生成 .class字节码文件
    2)运行期:JVM加载 .class并运行 .class(0和1)
      特点:跨平台、一次编程到处使用

  2. 名词解释:-----------常见面试题
    1)JVM:java虚拟机
       加载 .class并运行 .class
    2)JRE:java运行环境
       除了包含JVM以外,还包含了运行java程序所必须的环境
      JRE=JVM+java系统类库(小零件)
    2.3)JDK:java开发工具包
      除了包含JRE以外,还包含了开发java程序所必须的命令工具
      JDK=JRE+编译、运行等命令工具
    说明:
    1)运行 java程序的最小环境是JRE
    2)开发 java程序的最小环境是JDK

注:
C语言的编译运行过程:--------效率高、区分操作系统的
   .c的源文件,经过编译,直接生成可执行文件(0和1)

java程序从开始到运行过程:
在这里插入图片描述

在这里插入图片描述
第二天:
1.变量:存数的; 代词, 指代的就是它所存的那个数

1)声明:
	int a;         //声明一个整型的变量,名为a
	int b,c,d;      //声明三个整型的变量,名为b,c,d
	
2)初始化:第一次赋值
	int a = 250;    //声明整型变量a并赋值为250,  = 是赋值的意思; 
	                                         //声明的同时初始化
	int a;        //声明整型变量a
	a = 250;      //给变量a赋值为250         //先声明后初始化  
	a = 360;      //修改变量a的值为360

	Eg:
	① int sum = 0;   //声明整型的变量sum,并且赋值为0
	Int a = 5;		//声明整型的变量a,并且赋值为5
	Int b = 6;
	Sum = a + b;     //修改sum的值为11
	②  int sum;
	Sum = 0;
	Sum = sum + 100;
	
3)使用:
	3.1)对变量的操作就是对它所存的那个数的操作
	Int a = 5;
	Int b = a+10;  //取出a的值5,加10后,再赋值给变量b     先读右边
	System.out.println(b);   //输出变量b的值15,不加引号,计算机认为它是个变量b
	System.out.println(“b”);  //输出b, 双引号中的原样输出
	
	   a = a+10;    //取出a的值5,加10后,再赋值给变量a
					//在a本身基础上增10
						
  3.2)变量的使用必须与数据类型匹配
	int a = 3.14;   //编译错误, 数据类型不匹配 ;   int是整型变量,只能装整数
	
  3.3)变量在用之前必须声明并初始化
	System.out.println(m);   //编译错误 , m未声明
	int m;
	System.out.println(m);   //编译错误 , m未初始化
	int a,b = 10;    //一次声明两个变量,a没有值,b的值为10
	Int c = a + b; 
	System.out.println(c);   //编译错误, a未初始化
	
	int m = 5 ;
	System.out.println(m);   //编译正确
	
4)命名:
	4.1)只能包含字母,数字, _ 和$符, 并且不能以数字开头
	4.2)严格区分大小写
	4.3)不能使用关键字    代码里紫颜色的, 因为Java里已经占了  eg: package, class
	4.4)可以中文命名, 但不建议
 		int a;  //不直观    int年龄;  //直观但不专业   int nianling;  //既不直观,也不专业
		建议“英文的见名知意”: int age;  //建议   
		
“驼峰命名法”:
int score, myScore, myJavaScore; //第一个单词首字母小写,其余单词首字母大写, java变量的命名

“帕斯卡命名法”: 
int Score, MyScore, MyJavaScore; //所有单词首字母大写, 类的命名  eg: HelloWorld

2. 八种基本数据类型: byte,short,int,long,float,double,boolean,char
在这里插入图片描述
1) int:整型,4个字节(32位), -21个多亿到21个多亿
1.1)整数直接量默认为int型,但不能超出范围,超范围则编译错误
1.2)两个整数相除,结果还是整数,小数位无条件舍弃
1.3)整数运算时超出范围则发生溢出,溢出不是错误,但是是需要避免的

	int a = 250;  //250为整数直接量,默认为int型
    int b = 10000000000;  //编译错误,100亿为整数直接量,默认为int型,但超出了int范围了

    System.out.println(5/2);   //2
    System.out.println(2/5);   //0
    System.out.println(5/2.0); //2.5

    int c = 2147483647;  //int的最大值
    c = c+1;
    System.out.println(c);  //-2147483648,发生溢出了,需要避免

2) long:长整型,8个字节(64位),很大很大很大
2.1)长整型直接量需在数字后加L或l
2.2)运算时若有可能溢出,建议在第1个数字后加L
2.3)System.currentTimeMillis()用于获取自1970.1.1零时到此时此刻的毫秒数

	long a =25L;  //25L为长整型直接量
    long b = 10000000000; //编译错误,100亿为整数直接量,默认为int型,但超出int范围了
    long c = 10000000000L;     //100亿L为长整型直接量

    long d = 1000000000*2*10L;
    System.out.println(d);    //200亿
    long e = 1000000000*3*10L;
    System.out.println(e);    //不是300亿    前两个溢出了,是溢出的那个数*10L
    long f = 1000000000L*3*10;
    System.out.println(f);    //300亿

3) double:浮点型,8个字节(64位),很大很大很大 浮点数就是小数
3.1)浮点数直接量默认为double型,表示float需在数字后加f或F 小数都用double
3.2)double和float数据在运算时,有可能会出现舍入误差

	double a = 3.14159;  //3.14159为浮点数直接量,默认double型
    float b = 3.14159F;  //3.14159F为float型直接量

    double c=3.0,d=2.9;
    System.out.println(c-d);  //0.10000000000000009,有可能会发生舍入误差

4)boolean:布尔型,1个字节(8位)
   只能赋值为true和false

	boolean b1 = true;   //true为布尔型直接量
    boolean b2 = false;  //false为布尔型直接量
    boolean b3 = 25;     //编译错误,布尔型只能赋值true或false

5) char:字符型,2个字节(16位)
5.1)采用Unicode字符集编码,一个字符对应一个码,
  表现的形式的字符是char,但实质上是码int
   (ASCII码:‘a’–97 ‘A’–65 ‘0’–48)
5.2)字符直接量必须放在单引号中,只能有一个
5.3)特殊符号需通过\来转义

		char c1 = '女';  //字符女
        char c2 = 'f';   //字符f
        char c3 = '6';   //字符6
        char c4 = ' ';   //空格符
        //char c5 = 女;  //编译错误,字符直接量必须放在单引号中
        //char c6 = '';  //编译错误,必须有字符
        //char c7 = '25'; //编译错误,只能装一个字符

        char c8 = '\'';
        System.out.println(c8);  //'
        char c9 = 65;    //0到65535之间
        System.out.println(c9);  //A  输出时会依据c9的数据类型来做对应的输出
	
	补:
			  够用就行  
	1G=1024M(兆)   1M=1024KB(千字节)  1KB=1024B(字节)  1B=8Bit(位)
	1G=1024*1024*1024字节------------------1073741824字节

   int a = 10000000000;      //编译错误       直接量超范围为编译错误
   int a = 10000000000*10   //溢出           运算时超范围为溢出
	long a = 100000000000;   //会有编译错误
	long b = 1000000000000L;

   				20亿(int)
	long a =1000000000*2*10L;
	System.out.println(a);   //200亿(long)

     			溢出了
	long b =1000000000*3*10L;
	System.out.println(a);   //不是300亿

   				30亿(long) 
	long c =1000000000L*3*10;
	System.out.println(c);   //300亿(long)

3.基本数据类型间的转换:

基本数据类型从小到大依次为:
		byte,short,int,long,float,double
			  char,
			  
1)两种方式:
	1.1)自动类型转换:小类型到大类型
	1.2)强制类型转换:大类型到小类型
	
    	(要转换成为的数据类型)变量
 		 强转有可能溢出或丢失精度

2)两点规则:              整数直接量默认为int型
	2.1) 整数直接量可以直接赋值给byte,short,char,但不能超出范围
	2.2)  byte,short,char型数据参与运算时,系统会一律自动转换为int再运算
	
	
	int a = 5;
    long b = a;    //自动类型转换
    int c = (int)b;   //强制类型转换

    long d = 5;  //自动类型转换
    double e = 5; //自动类型转换

    long f = 10000000000L;
    int g = (int)f;
    System.out.println(g);  //强转时有可能会发生溢出

    double h = 25.987;
    int i = (int)h;
    System.out.println(i);  //25,强转时有可能会丢失精度
    
 ---------------------------------------------------------------------
    
	byte b1 = 5;
    byte b2 = 6;
    //byte b3 = b1+b2;  //编译错误,b1+b2时系统将b1和b2自动转换为int类型再做加法
    byte b4 = (byte)(b1+b2);                        //做运算时就是int型了

    System.out.println(2+2);      //4
    System.out.println(2+'2');    //52,2加上'2'的码50
    System.out.println('2'+'2');  //100,'2'的码50,加上'2'的码50   0=48

    System.out.println('2');  //2     //只有做运算时才转换成int型

4.Scanner接收输入:

1)在package下:
	import java.util.Scanner;
2)在main中:
	Scanner scan = new Scanner(System.in);
3)在第2步之下:
	System.out.println("请输入年龄:");
	int age = scan.nextInt();  
	System.out.println("请输入价格:");
	double price = scan.nextDouble();
	System.out.println("年龄为:"+age+",价格为:"+price);

第三天:
运算符:
1)算术运算符:+, -, *, /, %, ++, - -
   1)%:取模/取余,
   2)++/- -:
     2.1)单独使用时,在前在后都一样
     2.2)被使用时,在前在后不一样
        a++的值为a-----------------------(a- -的值为a)
        ++a的值为a+1---------------------(- -a的值为a-1)

	int a=5,b=5;
    int c = a++;  //1)将a++的值5赋值给c   2)a自增1变为6
    int d = ++b;  //1)将++b的值6赋值给d   2)b自增1变为6
    System.out.println(a);  //6
    System.out.println(b);  //6
    System.out.println(c);  //5
    System.out.println(d);  //6
    
	int a=5,b=5;
    int c = a--;  //1)将a--的值5赋值给c   2)a自减1变为4
    int d = --b;  //1)将--b的值4赋值给d   2)b自减1变为4
    System.out.println(a);  //4
    System.out.println(b);  //4
    System.out.println(c);  //5
    System.out.println(d);  //4
    
	int a=5,b=5;
    a++; //相当于a=a+1
    ++b; //相当于b=b+1
    System.out.println(a); //6
    System.out.println(b); //6

	int a=5,b=5;
    a--; //相当于a=a-1
    --b; //相当于b=b-1
    System.out.println(a); //4
    System.out.println(b); //4
    
	System.out.println(5%2); //1,商2余1
    System.out.println(8%2); //0,商4余0----整除
    System.out.println(2%8); //2,商0余2

2)关系运算符:>, <, >=, <=, ==(等于), !=(不等于)
   关系运算的结果为boolean型,
   关系成立则为true,关系不成立则为false

	int a=5,b=10,c=5;
	System.out.println(c<b);  //true
	System.out.println(a==c); //true
    System.out.println(a!=c); //false
    
    System.out.println(c++>5); //false ---------1)被使用时c++的值为c,所以5>5,为false
                                            //  2)与此同时,c自增1变为6
    System.out.println(c++>5); //true  ---------1)c此时为6了,又 被使用时c++的值为c,所以6>5,为true
                                            //  2)与此同时,c自增1变为7

    System.out.println(++b>10); //true ---------1)被使用时++b的值为b+1,所以11>10,为true
                                            //  2)与此同时,b自增1变为11

3)逻辑运算符:&&, ||, ! boolean型     常常用于连接多个关系运算符

&& : 短路与(并且),两边都为真才为真,见false则false
    ----当第1个数为false时,则发生短路(后面的不执行了)
|| : 短路或(或者),有真则为真,见true则true
    ----第1个数为true时,则发生短路(后面的不执行了)
! : 逻辑非(取反),非真则假,非假则真

  逻辑运算建立在关系运算的基础之上的
  逻辑运算的结果也是boolean型

	int a=5,b=10,c=5;
	
	boolean b1 = b>=a && b<c;
    System.out.println(b1);             //true&&false=false
    System.out.println(b<=c && b>a);    //fasle&&true=false
    System.out.println(a==b && c>b);    //false&&false=false
    System.out.println(b!=c && a<b);    //true&&true=true

	System.out.println(b>=a || b<c);  //true||false=true
    System.out.println(b<=c || b>a);  //false||true=true
    System.out.println(b!=c || a<b);  //true||true=true
    System.out.println(a==b || c>b);  //false||false=false

    boolean b2 = !(a<b);
    System.out.println(b2);           //!true=false
    System.out.println(!(a>b));       //!false=true

	 /*
    int a=5,b=10,c=5;

    boolean b3 = a>b && c++>2;
    System.out.println(b3);   //false
    System.out.println(c);    //5 ,发生短路了,后面的不执行了

    boolean b4 = a<b && c++>2;
    System.out.println(b4);   //true
    System.out.println(c);    //6 ,没发生短路
    */
    /*
    boolean b5 = a<b || c++>2;
    System.out.println(b5);   //true
    System.out.println(c);    //5 ,发生短路了,后面的不执行了

    boolean b6 = a>b || c++>2;
    System.out.println(b6);   //true
    System.out.println(c);    //6,没发生短路
    */

4)赋值运算符:=, +=, -=, =, /=, %=
  1)简单赋值运算符:=
  2)扩展赋值运算符:+=,-=,
=,/=,%=
          扩展赋值运算符自带强转功能

	int a = 5;
    a += 10;  //相当于a=(int)(a+10)
    System.out.println(a);  //15
    a *= 2;   //相当于a=(int)(a*2)
    System.out.println(a);  //30
    a /= 6;   //相当于a=(int)(a/6)
    System.out.println(a);  //5

    //常见面试题:以下三条语句哪句错误 ? 为什么 ?
    short s = 5;     //两条规则 1.
    //s = s+10;      //两条规则 2.     编译错误,改为: s = (short)(s+10)
    s += 10;         //相当于 s = (short)(s+10)

5)字符串连接运算符:+
  1.1)若两边为数字,则做加法运算
  1.2)若两边出现了字符串,则做字符串连接

	int age = 23;
    System.out.println("age=");   //age=
    System.out.println(age);      //23
    System.out.println("age="+age);  //age=23
    System.out.println("我的年龄是:"+age);  //我的年龄是:23
    System.out.println("我今年"+age+"岁了");  //我今年23岁了

    String name = "LCX";
    System.out.println("name"+name);  //name=LCX
    System.out.println("大家好,我叫"+name);  //大家好,我叫LCX
    System.out.println("大家好,我叫"+name+",今年"+age+"岁了"); //大家好,我叫LCX,今年23岁了

    System.out.println(10+20+""+30); //3030-----------String
    System.out.println(10+20+30+""); //60-------------String
    System.out.println(""+10+20+30); //102030---------String

6)条件/三目运算符: boolean?数1:数2
  执行过程:
    整个表达式是有结果的,它的结果要么是?号的数1,要么是:号后的数2
    判断boolean的值:
        若为true,则整个表达式的结果为?号的数1
        若为false,则整个表达式的结果为:号后的数2

	int num = 5;
    int flag = num>0?1:-1;
    System.out.println(flag);   //1

    int a=8,b=5;
    int max =a>b?a:b;
    System.out.println(max);    //a

char:字符型,单引号中,1个
String:字符串型,双引号中,0个到多个 ----------------------API第一天详细讲它

 给a本身增1
		a = a+1;
		a++;
		++a;
		a += 1;

分支结构:有条件的去执行某个语句,并非每句必走

1、if结构: 1条路

1)	语法:
     if(boolean){
			语句块 ------------ 基于条件执行的语句
	 }
2)	执行过程:
		判断boolean的值:
			若为true,则执行语句块
 			若为false,则if结束
 	eg:
		boolean flag = true;
		if(flag){
		}
		
		Int a = 5;
		if(a>2){
		}
		
		Int a = 5;
		if(a>2 && a<9){
		}
		
		 偶数的判断
   		 int num = 5;   //带数6,5
  		 if(num%2==0){
         System.out.println(num+"是偶数");
    	 }
  	     System.out.println("继续...");

		满500打8折
        double price = 600.0;   //消费金额     600.0,300.0
        if(price>=500){  //满500
            price*=0.8;  //打8折
        }
        System.out.println("最终消费金额为:"+price);

2、 if…else结构: 2条路

1)语法:
     if(boolean){
		  语句块1 
	 }else{
		  语句块2
	 }
2)执行过程:
  判断boolean的值:
		 若为true,则执行语句块1(整个结束)
         若为false,则执行语句块2(整个结束) 
3)说明:
		语句块1和语句块2,必走其中之一

	偶数、奇数的判断:
    int num = 6 ;
    if(num%2==0){
        System.out.println(num+"是偶数");
    }else{
        System.out.println(num+"是奇数");
    }
    System.out.println("继续...");

	满500打8折,不满500打9折
    double price = 300.0;  //消费金额------600.0,300.0
    if(price>=500){   //满500
        price*=0.8;
    }else{           //不满500
        price*=0.9;
    }
    System.out.println("最终消费金额为:"+price);

3、 if…else if结构: 多条路

1)语法:
     if(boolean-1){
		  语句块1 
	}else if(boolean-2){
		  语句块2
	} else if(boolean-3){
		  语句块3
	}else{
		  语句块4
	}
2)执行过程:
	判断boolean-1,若为true则执行语句块1(结束),若为false则
	再判断boolean-2,若为true则执行语句块2(结束),若为false则
	再判断boolean-3,若为true则执行语句块3(结束),若为false则执行语句块4(结束)

3)说明:
	语句块1/2/3/4,只能走其中之一

package day04;
import java.util.Scanner;
//成绩等级判断
public class ScoreLevel {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        System.out.println("请输入成绩:");
        double score = scan.nextDouble();

    //888,-56,95,85,65,45
    if(score<0 || score>100){
        System.out.println("成绩不合法");
    }else if(score>=90){ //合法
        System.out.println("A-优秀");
    }else if(score>=80){
        System.out.println("B-良好");
    }else if(score>=60){
        System.out.println("C-中等");
    }else{
        System.out.println("D-不及格");
    }
}
}

4、switch…case结构: 多条路

优点:效率高、结构清晰
缺点:只能对整数操作、只能判断相等

break:跳出switch   结束
	对整数判断相等,首选switch…case
switch…case语句是一种特殊的分支结构,可以根据一个整数表达式的不同取值,
												从不同的程序入口开始执行。

public class SwitchCaseDemo {
    public static void main(String[] args) {
        int num = 2;
        switch (num){ //表达式的值的类型:byte,short,int,char,String(JDK1.7开始支持)
            case 1:     //if(num==1)
                System.out.println(111);
                break;
            case 2:     //以此为入口
                System.out.println(222);
                break;  //跳出switch
            case 3:
                System.out.println(333);
                break;
            default:  //所有case都未匹配时执行
                System.out.println(666);
        }
    }
}

package day04;
import java.util.Scanner;
//命令解析程序
public class CommandBySwitch {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        System.out.println("请选择功能: 1.存款  2.取款  3.查询余额  0.退出");
        int command = scan.nextInt();

        switch(command){
            case 1:
                System.out.println("存款业务...");
                break;
            case 2:
                System.out.println("取款业务...");
                break;
            case 3:
                System.out.println("查询余额业务...");
                break;
            case 0:
                System.out.println("退出,欢迎下次再来!");
                break;
            default:
                System.out.println("输出错误");
        }
    }
}

任何复杂的程序逻辑都可以通过三种结构来实现:
1)顺序结构: 从上往下逐行执行,每句必走
2)分支结构::有条件的去执行某个语句一次, 并非每句必走
3)循环结构: 有条件的去执行某个语句多次, 并非每句必走

分支结构 与 循环结构 的区别:
if(boolean){       //只判断一次
语句块      //最多执行一次
}

while(boolean){   //判断多次
	语句块      //执行多次
}

在这里插入图片描述
分支结构:
满500打8折
满499减100

打8折-----------------------基于条件的执行
减100------------------------基于条件的执行

满足条件就干事, 不满足条件就不干事--------------------if
满足条件就干事, 不满足条件干另一件事-----------------if…else

满500打8折, 不满500不打折----------------if
满500打8折, 不满500打9折----------------if…else


第四天:
循环结构: while结构    do…while结构   for结构

1、 循环:反复执行一段相同或相似的代码

2、 循环三要素:
  1)循环变量的初始化
  2)循环的条件 ( 以循环变量为基础 )
  3)循环变量的改变 ( 向着循环的结束变 )

循环变量:在整个循环过程中所反复改变的那个数

	跑3圈:
							圈数为0
		够3圈吗? 不够 跑一圈 圈数为1
		够3圈吗? 不够 跑一圈 圈数为2
		够3圈吗? 不够 跑一圈 圈数为3
		够3圈吗? 够了
		
循环变量:圈数count
	1)int count=0 ;
	2)count < 3
	3)count++ ;
	count=0/1/2/3 时结束

案例一:
			输出6次“行动是成功的阶梯”
		行动是成功的阶梯
		行动是成功的阶梯
		行动是成功的阶梯
		行动是成功的阶梯
		行动是成功的阶梯
		行动是成功的阶梯
		
			循环变量:次数times
			1)int times=0;
			2)times < 6
			3)times++;
			times=0/1/2/3/4/5/6时结束

案例二:
			输出9的乘法表:
				1*9=9
				2*9=18
				3*9=27
				4*9=36
				5*9=45
				6*9=54
				7*9=63
				8*9=72
				9*9=81
		
			循环变量:乘数num
			1)int num=1;
			2)num<=9
			3)num++;
			num=1/2/3/4/5/6/7/8/9/10时结束

3、 循环结构:有条件的去执行某个语句多次, 并非每句必走

1) while结构: 先判断,后执行,有可能一次都不执行
  1.1)语法:
      while(boolean){
        语句块/循环体 --------- 反复执行的代码
      }

  1.2)执行过程:
      判断boolean的值,若为true则执行语句块,
      再判断boolean的值,若为true则再执行语句块,
      再判断boolean的值,若为true则再执行语句块,
      如此反复,直到boolean的值为false时,while循环结束

	int times = 0;      //1.循环变量的初始化
    while (times<6){    //2.循环的条件
        System.out.println("行动是成功的阶梯");
        times ++;       //3.循环变量的改变
    }
    System.out.println("继续...");

	执行过程:
                      times=0
        true   输出   times=1
        true   输出   times=2
        true   输出   times=3
        true   输出   times=4
        true   输出   times=5
        true   输出   times=6
        fasle  while结束   输出继续...


	int num = 1;      //3*9=27
    while(num<=9){
        System.out.println(num+"*9="+num*9);
        num++;    //num+=2
    }
    System.out.println("继续...");

    执行过程:
                    num=1
    true    输出    num=2
    true    输出    num=3
    true    输出    num=4
    true    输出    num=5
    true    输出    num=6
    true    输出    num=7
    true    输出    num=8
    true    输出    num=9
    true    输出    num=10
    false   while循环结束   输出继续...

2) do…while: 先执行,后判断,至少执行一次
      要素1与要素3相同时,首选do…while

  2.1)语法:
      do{
       语句块/循环体
      }while(boolean表达式);

  2.2)执行过程:
    先执行语句块,再判断boolean的值,若为true则
    再执行语句块,再判断boolean的值,若为true则
    再执行语句块,再判断boolean的值,
    如此反复,直到boolean的值为false时,do…while结束

package day04;
import java.util.Scanner;
//猜数字小游戏
public class Guessing {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int num = (int)(Math.random()*1000+1); //1到1000之内的随机数
        System.out.println(num); //作弊

    //假设num=250-----300(大),200(小),250(对)
    int guess;
    do{
        System.out.println("猜吧!");
        guess = scan.nextInt(); //1+3
        if(guess>num){
            System.out.println("太大了");
        }else if(guess<num){
            System.out.println("太小了");
        }else{
            System.out.println("恭喜你,猜对了!");
        }
    }while(guess!=num); //2
			
    1到1000之内的随机数
    Math.random()------------------0.0到0.999999999999999999...
    *1000--------------------------0.0到999.9999999999999999...
    +1-----------------------------1.0到1000.999999999999999...
    (int)--------------------------1到1000

	0到99的随机数:
	Math.random()----------------------0.0到0.99999999999999999…
		*100-------------------------------0.0到99.9999999999999999…
		(int)--------------------------------0到99
	0到99不需要加1,直接强转
	如果要得1到100,才需要加1


	给变量赋值:
	1)	赋一个固定的值:
	   int a = 5;
	2)	接收用户输入的值:--------------------Scanner
	   int a = scan.nextInt();
	3)	系统随机的值:------------------------周五讲
	Math.random()


	案例: 猜数字
		 int num = 250;  //藏起来的数
		循环变量:用户猜的那个数guess
		1)	System.out.println(“猜吧!”);
		int guess = scan.nextInt();
		2) guess != num
		3)  System.out.println(“猜吧”);
		    guess = scan.nextInt();
		
		猜吧!
		300
		太大了
		
		猜吧!
		200
		太小了
		
		猜吧!
		251
		太大了
		
		猜吧!
		250
		恭喜你,猜对了
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值