JAVA学习笔记(第三章 变量与操作符)

一、变量

1、什么是变量

         变量的定义是: 用来命名一个数据的标识符

        int year = 1949;

        int 是数据类型,表示是整数
        year 是一个标识符
        = 是赋值操作符
        1949 是一个数字类型的值
        ; 表示该行结束

2、变量类型(见上一章)

3、字面值

给基本类型的变量赋值的方式叫做 字面值,如下所例:

float hp = 500f;
int armor = 50;

整型

long val = 26L; //以L结尾的字面值表示long型
int decVal = 26; //默认就是int型
int hexVal = 0x1a; //16进制
int oxVal = 032; //8进制
int binVal = 0b11010; //2进制

浮点型

float f1 = 123.4F;// 以F结尾的字面值表示float类型
double d1 = 123.4;// 默认就是double类型
double d2 = 1.234e2;// 科学计数法表示double

字符和字符串

String name = "盖伦";
char a= 'c';

//以下是转义字符
char tab = '\t'; //制表符
char carriageReturn = '\r'; //回车
char newLine = '\n'; //换行
char doubleQuote = '\"'; //双引号
char singleQuote = '\''; //单引号
char backslash = '\\'; //反斜杠

4、类型转换

规则:从小到大自动转,从大到小要强转

byte b = 5;
int i1 = 10;
int i2 = 300;
          
b = (byte) i1;
//因为i1的值是在byte范围之内,所以即便进行强制转换
//最后得到的值,也是10
System.out.println(b);
          
//因为i2的值是在byte范围之外,所以就会按照byte的长度进行截取
//i2的值是300,其对应的二进制数是 100101100
//按照byte的长度8位进行截取后,其值为 00101100 即44
b =(byte) i2;
System.out.println(b);
         
//查看一个整数对应的二进制的方法:
System.out.println(Integer.toBinaryString(i2));

 

5、命名规则(见上一章属性)

6、作用域

(1)声明在下面的变量,叫做字段 或者属性、成员变量、Field

                其作用域就是从其声明的位置开始的整个类
(2)声明在方法上的变量,叫做参数

                参数的作用域即为该方法内的所有代码

(3)声明在方法内的变量,叫做局部变量

                其作用域在声明开始的位置,到其所处于的块结束位置

7、变量表达式与变量块

        以 结尾的一段代码,即为一个表达式

        从 {  开始 到对应的 }  结束,即一个块

二、操作符

1.操作符类型

(1)算数操作符 + - * / %(取余数,又叫取模) ++ --(自增、自减)

        i++; 先取值,再运算
        ++i; 先运算,再取值

(2)关系操作符 >  >=  <  <=  == !=

(3)逻辑运算符 &(长路与) &&(短路与)|(长路或) ||(短路或)!(取反)^(异或)

        长路与:两侧会被运算

        短路与:只要第一个是false,第二个就不进行运算了

        长路或: 两侧会被运算

        短路或 :只要第一个是true的,第二个就不进行运算了

(4)位操作符 & | ~ ^ >> << (带符号移位)>>> <<<(无符号移位)

        位操作符在实际工作中用的并不常见

        通过Integer.toBinaryString() 方法,将一个十进制整数转换为一个二进制字符串

(5)赋值操作符  =,+=,-= , *= , /= , %= , &= , |= , ^= , >>= , >>>= 

(6)三元操作符

        表达式 值1 值2
        如果表达式为真 返回值1
        如果表达式为假 返回值2

int k = i < j ? 99 : 88;

// 相当于
if (i < j) {
    k = 99;
} else {
    k = 88;
}

2.Scanner类

注意: 使用Scanner类,需要在最前面加上 import java.util.Scanner;

public class HelloWorld {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        //读取整数
        int a = s.nextInt();
        System.out.println("第一个整数:"+a);
        //读取浮点数
        float b = s.nextFloat();
        System.out.println("读取的浮点数的值是:"+b);
        //读取字符串
        String c = s.nextLine();
        String d = s.nextLine();
        System.out.println("读取的字符串是:"+d);
    }
}

注意:如果在通过nextInt()读取了整数后,再接着读取字符串,读出来的是回车换行:"\r\n",因为nextInt仅仅读取数字信息,而不会读取回车换行"\r\n".
        所以,如果需要读取了整数后,接着读取字符串,那么就应该连续执行两次nextLine(),第一次是取走回车换行,第二次才是读取真正的字符串

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值