Java入门基础(二)(变量使用极其转换、Scanner 输入、运算符)

本文详细介绍了Java中的变量使用,包括声明、赋值及类型转换,特别强调了整型和浮点型的赋值注意事项。接着,讲解了Scanner类的输入操作,如nextInt()和nextDouble()等方法的使用,并解决了nextLine()与next()方法的配合问题。最后,概述了算术、赋值、比较、逻辑、自增自减以及位运算符的用法,为初学者提供了全面的基础知识指南。
摘要由CSDN通过智能技术生成

(一)变量

        1.变量使用步骤:

        变量声明

        变量赋值

        变量使用

        1和2可以合并成一行代码

        语法: 数据类型 变量名 = 值;

        2.整型赋值的注意事项:

        byte short int long

        如果变量是 byte: 赋值的数字 ~128 - 127 之间, 可以直接赋值

        byte b = 121;

        但是如果数字超出该范围, 直接赋值报错

        一句话: 整型类型赋值,数字超出类型的范围, 报错, 如果没有超出,不报错

        3.浮点型:

        float: 单精度浮点数

        double: 双精度浮点数

        小数的数据类型,默认是 double类型, double的优先级高于float,

        float num = 1.2; 1.2 double类型, 相当于把double类型转换为float类型, 但是float类型比double低

        相当于把高的转换为低的, 无法自动转换,报错

      

 

        数据类型转换:

                1) 由低转换为高 , java 自动转换

                2) 由高转换到底: 无法自动转换, 需要手动强制进行转换: 数据类型(低) 变量名 = ()值(高的值);

double a = 1.2;
float b = (float)a;
int c = (int)a;

(二)Scanner 输入

1.使用步骤:

1)在类上导入 Scanner类, 位于java.util包: import java.util.Scanner;String/System 不需要导包, 位于java.lang包, 程序自动加载java.lang下的类

2)创建Scanner Scanner input = new Scanner(System.in);

3)调用next相关的方法, 进行输入

        nextInt() 输入一个整型

        nextDouble() 输入一个double浮点数

        nextBoolean() nextFloat()....

        但是: 不能输入char 没有nextChar()

        next() 输入字符串 nextLine() 输入字符串

细节:

        输入字符串: next() nextLine()

        next() 输入有效字符串, 不包含 空格,tab,回车, 遇到空格,tab,回车,都结束输入

        但是空格,tab,回车内容 保存到缓存中

        nextLine() 输入字符串,包含空格, 但是nextLine() 前面有其他 next() nextInt() nextDouble()...

        nextLine() 不起作用, 无法输入

解决方案:

1. nextLine() 放在所有的next方法之前

2. nextLine() 不在第一个位置: 使用nextLine() 再加一个nextLine()

(三)运算符

1.算术运算符: + - / * %

2.赋值运算符: =

3.比较运算符: > < >= <= == !=

4.逻辑运算符: &&(与) || (或) ! &(与) | (或)

5.++,-- 运算符

6.位运算: &(与) |(或) ^(异或)

1. 算术运算符

+: 1) 数值类型 + 加法

   2) 字符串与任意的类型 +, 表示拼接, 结果:字符串

/: 1) 整数/整数 整除(结果取整)

   2) 除数或者是被除数是浮点类型, 除法, 结果带小数

%: 取余 5%2= 1

作用:

1) 判断是否整除

2) 得到某位的数值, 对某个数进行缩小归类

2.自加,自减

++: 加1 语法 变量++ ++变量

前加加 ++变量 步骤: 先变量加1 , 后赋值, 整个表达式的值 = 变量的值

>int a  = 10;
>
>//++a;  //1)  a = a+1  a=11  2) 赋值  (++a) = a;  (++a) = 11
>
>int b = ++a;   //1)  a = a+1  a=11  2) 赋值  (++a) = a;  (++a) = 11  3) 赋值符号:  把++a表达式的值赋给b

后加加: 变量++ 先赋值: 变量的值赋给表达式 后加1: 变量加1

int a = 10;

int b = a++; //1) 先赋值, 把a的值赋值给(a++)表达式 10 2) 加1: a = a+1, a=11 3)再把表达式结果赋值给b b = 10

-- 减1

前减减: --变量: 先减1, 再赋值

后减减: 变量--: 先赋值,再减1

3. 赋值运算符

1)= 语法: 变量 = 值; 变量 = 变量1; 不能写: 值 = 变量; 错误, 把赋值符号右边赋值给左边

2)+= a += b; a = a+b;

3)-= a -= b; a= a-b;

4)*= a * = b; a = a*b;

5)/= a /= b; a = a/b;

6)%= a%=b; a= a%b;

赋值符号与算术符号组合的赋值符号: 隐式数据类型转换

a += b; 把a+b的结果 转换为a的类型

4. 比较运算符

比较运算符结果: boolean类型: true/false

使用场景: 条件语句, 循环语句

== 等于, = 赋值符号

!= 不等于

>大于

< 小于

>= 大于等于

<= 小于等于

5.逻辑运算符

&& 短路与, 如果第一个表达式的结果为false, && 后面的表达式都不执行(类似电路的短路)

|| 短路或: 如果第一个表达式的结果为true, || 后面的表达式都不执行(类似电路的短路)

! 非

& 与 没有短路

| 或 没有短路

结果: boolean 类型

使用的场景: 条件,循环中, 连接多个比较表达式

6.三目运算符

语法: 条件(boolean的表达式)?值1:值2

如果条件为true: 返回值1, 如果条件为false, 返回值2

三目运算符可以嵌套:

条件1?值1:(条件2?值2:值3)

返回值的类型以第一个为主

对if-else 某些场景的简化, if-else返回结果, 可以使用三目运算替换,

7)位运算

二进制的位运算

&: 按位与 : 1:true 0:false 只要位上有一个为0, 结果:0 位上都为1, 结果: 1

|: 按位或: 只要位上有一个为1: 结果: 1 位上都是0: 结果: 0

!: 按位非 : 1 -取反-> 0 0-取反->1

^: 异或: 相同为0 , 不同为1 一个数异或某个数两次,等到自己

移位操作: 拓展

>>右移

<<:左移

java: 十进制, 八进制, 十六进制:

int a = 123; //十进制数

int b = 0123; //八进制

int c = 0x123; //十六进制

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值