***微信公众号程序猿冰冰,分享java干货与互联网趣事,欢迎大家关注***
本章目标:
- 进制概述
- 掌握变量的概念
- 掌握常用的数据类型
- 会使用赋值运算符、算术运算符
- 掌握boolean类型和关系运算符的使用
- 会使用数据类型转换
- 掌握键盘录入
进制的概述
***进制:***就是进位制,是人们规定的一种进位方法。对于任何一种进制–X进制,就表示某一位置上的数运算时是逢X进一位。二进制就是逢二进一,八进制是逢八进一,十进制是逢十进一,十六进制是逢十六进一。例如一周有七天,七进制,一年有十二个月,十二进制
十进制的由来
十进制的由来是因为人类有十个手指
二进制的由来
其实二进制来源与中国,请看史料记载:
18世纪德国数理哲学大师莱布尼兹从他的传教士朋友鲍威特寄给他的拉丁文译本《易经》中,读到了八卦的组成结构,惊奇地发现其基本素数(0)(1),即《易经》的阴爻yao- -和__阳爻,其进位制就是二进制,并认为这是世界上数学进制中最先进的。20世纪被称作第三次科技革命的重要标志之一的计算机的发明与应用,其运算模式正是二进制。它不但证明了莱布尼兹的原理是正确的,同时也证明了《易经》数理学是很了不起的。
八进制的由来
任何数据在计算机中都是以二进制的形式存在的。二进制早期由电信号开关演变而来。一个整数在内存中一样也是二进制的,但是使用一大串的1或者0组成的数值进行使用很麻烦。
所以就想把一大串缩短点,将二进制中的三位用一位表示。这三位可以取到的最大值就是7.超过7就进位了,这就是八进制。
十六进制的由来
但是对于过长的二进制变成八进制还是较长,所以出现的用4个二进制位表示一位的情况,四个二进制位最大是15,这就是十六进制。
变量的概述
概念:在程序执行的过程中,在某个范围内其值可以发生改变的量
*命名规范:*字下美人其后数、驼峰命名法
格式:数据类型 变量名 = 变量值
为什么要定义变量: 用来不断的存放同一类型的常量,并可以重复使用
数据类型的概述与分类
基本数据类型、引用数据类型
运算符的使用
**单目运算符:**指一个操作数自身运算
//单目运算符 指一个操作数自身运算 ++自身加一 --自身减一
int i = 1;**
**//System.out.println(i++); //i++ 先输出 后加减**
**System.out.println(++i); //++i 先加减后输出
**双目运算符:**指两个操作数
//指两个操作数
//+**
**int num = 1;**
**int num1 = 2;**
**int sum = num+num1;**
**System.out.println("总和为"+sum);**
**//-**
**int num2 = 1;**
**int num3 = 2;**
**int sum1 = num2-num3;**
**System.out.println("差为"+sum1);**
**//\***
**int num4 = 1;**
**int num5 = 2;**
**int sum2 = num4\*num5;**
**System.out.println("积为"+sum2);**
**// /**
**int num6 = 9;**
**int num7 = 3;**
**int sum3 = num6/num7;**
**System.out.println("商为"+sum3);**
**// % 10%3=3····1**
**int num8 = 9;**
**int num9 = 3;**
**int sum4 = num8%num9;**
**System.out.println("余数为"+sum4);**
控制台录入
/\****
*** 控制台录入**
*** ClassName: Test5**
*** @Description: TODO**
*** @author Super_郭**
*** @date 2022年8月14日 下午15:07:14**
***/**
**//1.准备工具(笔和纸) 导入工具包**
**import java.util.Scanner;**
**public class Test5 {**
**public static void main(String[] args) {**
**//2.拿起笔准备写 创建扫描仪**
**Scanner input = new Scanner(System.in);**
**//提示用户输入什么**
**System.out.println("请输入您的java分数");**
**//3.写东西 从控制台录入**
**int score = input.nextInt();**
**//4.使用(输出你的java成绩)**
**System.out.println("我的java成绩为"+score);**
**}**
**}
**强制类型转换**
**double sum = 7.5;**
**double sum1 = 2.9;**
**//强制类型转换 不做四舍五入运算**
**double sum3 =sum-sum1;**
**int sum2 = (int) (sum-sum1);**
**System.out.println(sum3);**
**System.out.println("差为"+sum2);
关系运算符
< > == (等于) !=(不等于) <= >=
public static void main(String[] args) {**
**int zhangScore = 100;//张三的成绩**
**int liScore = 100;**
**boolean result = zhangScore==liScore;**
**System.out.println("结果是"+result); //boolean 值为true/false**
**}
三目(三元)运算符
i>o?“大于”:“小于”;
**public static void main(String[] args) {**
**//单目 (一个操作数) 双目(两个操作数) 三目(三元运算符)**
**int i = 300;**
**int o = 200;**
**String result = i>o?"大于":"小于";**
**System.out.println("结果为"+result);**
**}
最后为大家整理了几道面试题,有兴趣的小伙伴可以试着做一做
1.请分别计算出a,b,c的值?
int a = 10;
int b = 10;
int c = 10;
a = b++;
c = --a;
b = ++a;
a = c–;
2.请分别计算出x,y的值?
int x = 4;
int y = (x++)+(++x)+(x*10);
3.面试题
byte b = 10;
b++;
b = b + 1;
果为"+result);**
**}
***最后为大家整理了几道面试题,有兴趣的小伙伴可以试着做一做***
**1.请分别计算出a,b,c的值?**
int a = 10;
int b = 10;
int c = 10;
a = b++;
c = --a;
b = ++a;
a = c--;
**2.请分别计算出x,y的值?**
int x = 4;
int y = (x++)+(++x)+(x*10);
**3.面试题**
byte b = 10;
b++;
b = b + 1;
问哪句会报错,为什么