0 前言
对于java或者其他编程语言的学习,没有良好的学习认知和习惯是无法高效快速掌握的,为了避免繁文缛节,仅用关键句列出(方法学习自韩顺平老师)
(1)学习过程要高效且愉快——通过搭建游戏、好玩的项目边玩边学
(2)先建立一个整体框架,然后再做细节——要有整体的知识体系(笔记目录整体来看就是框架了)
(3)先知道怎么去做,然后再去琢磨为什么
(4)不是会了再做,而是做了才会,是“做中学”的过程
(5)适当囫囵吞枣,不需要每一个细节都抠
(6)用到什么再学什么
(7)学习软件编程的初始阶段应该是在琢磨别人怎么做,而不是我认为应该怎么做的过程
这次笔记的主要内容是计算机进制转换、java变量及运算、java语句结构、数组字符串。最后给出实例并学习java错误的调试方式。
笔记的核心原则是:精简易懂+容易复现
1 计算机进制转换
(1)概述
计算机在设计出来后,能够识别的数制是二进制;而我们日常生活所用的是十进制。拿我们日常的十进制来说:0-9,逢十进位,这就是十进制,其他二进制、八进制、十六进制等都可以依次类推。其中,十六进制的基本数字是0-9,ABCDEF
(2)进制转换
详细可阅读博文:计算机基础进制转换(二进制、八进制、十进制、十六进制)
此处仅给出总结性结论
(3)java编码实现
该代码仅用于数值转换使用,而非知识点学习,可囫囵吞枣只用即可,具体细节知识后续会提及。
代码源自网络
// 作者:网络
// 功能:用来实现进制数之间的转换功能。
// 日期:2020年5月24日
package calculate;
public class conversionNumber {
/**
*② 算法思想是先把一个m进制的数转换为10进制
* 再将转换的十进制数转换为要转换的n进制数。
*/
public static void main(String[] args){
input();
}
/**
*该函数,用来实现十进制数转换为任意进制数
*
*
*/
public static void changeTenToNum(int ten,int number){
int sum=0;
int i=0;
int j=0;
while(ten>0){
int remainder=ten%number;
ten =ten/number;
sum+=remainder*Math.pow(10,j);
j++;
}
System.out.println("\n"+"结果为:"+sum);
}
/**
*input函数用来实现数据的输入输出功能。
*/
public static void input(){
boolean flag=true;
System.out.println("输入0结束循环\n");
while(flag){
System.out.println("\n请输入要转换的进制数:\n");
java.util.Scanner read=new java.util.Scanner(System.in);
int fristNum=read.nextInt();
if(fristNum==0)
{
flag=false;
System.out.println("\n你已结束了该算法,请重新进入!\n");
break;
}
System.out.println("请输入该数字是几进位数:\n");
int secondNum=read.nextInt();
if(secondNum==0)
{
flag=false;
System.out.println("\n你已结束了该算法,请重新进入!\n");
break;
}
int copy=fristNum;
/*
下面的while循环和if判断语句,用来实现判断输入数字的准确性。
*/
while(fristNum>0){
int judgment=fristNum%10;
fristNum /=10;
if(judgment>=secondNum){
System.out.println("你输入了一个错误的数字,可能是该数字与其进制数不匹配!");
flag=false;
break;
}
}
if(flag==false){
flag=true;
continue;
}
fristNum=copy;
System.out.println("请输入要转换为几进位数:\n");
int thirdlyNum=read.nextInt();
if(thirdlyNum==0)
{
flag=false;
System.out.println("\n你已结束了该算法,请重新进入!\n");
break;
}
changeTenToNum(changeNumToTen(fristNum,secondNum),thirdlyNum);
}
}
/**
*changeNumToTen函数用于实现n进制数转换为十进制数。
*/
public static int changeNumToTen