赞
踩
在结束之际,我想重申的是,学习并非如攀登险峻高峰,而是如滴水穿石般的持久累积。尤其当我们步入工作岗位之后,持之以恒的学习变得愈发不易,如同在茫茫大海中独自划舟,稍有松懈便可能被巨浪吞噬。然而,对于我们程序员而言,学习是生存之本,是我们在激烈市场竞争中立于不败之地的关键。一旦停止学习,我们便如同逆水行舟,不进则退,终将被时代的洪流所淘汰。因此,不断汲取新知识,不仅是对自己的提升,更是对自己的一份珍贵投资。让我们不断磨砺自己,与时代共同进步,书写属于我们的辉煌篇章。
需要完整版PDF学习资源私我
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
public static void main(String[] args) throws IOException {
question_02 question02 = new question\_02();
question02.method1();
// question02.method2();
// question02.method3();
}
//System.in
public void method1() throws IOException {
System.out.println(“Please Enter Data:”);
char i = (char)System.in.read();
System.out.println("System.in --> "+Math.abs(i-‘0’));
}
//InputStreamReader
public void method2() throws IOException {
System.out.println(“Please Enter Data:”);
//new一个InputStreamReader对象
InputStreamReader is = new InputStreamReader(System.in);
//BufferedReader的有参构造的方法
BufferedReader br = new BufferedReader(is);
//读取一行,抛出异常
String line = br.readLine();
System.out.println("InputStreamReader --> "+Math.abs(Integer.parseInt(line)));
}
//Scanner
public void method3(){
System.out.println(“Please Enter Data:”);
Scanner sc = new Scanner(System.in);
//读取int
int i = sc.nextInt();
//String s = sc.nextLine(); 读取字符串型输入
//float f = sc.nextFloat(); 读取float型输入
System.out.println("Scanner --> "+Math.abs(i));
}
}
**输出结果** ![](https://img-blog.csdnimg.cn/img_convert/d738ca7944551125f10ed73683596f8d.png) ![](https://img-blog.csdnimg.cn/img_convert/e5443a3552d9ceaa18841009c4c8791d.png) ### 扩展总结 > > 思考:`sc.next()`和`sc.nextLine()`有什么区别? > > > 答:`next()`遇到空格停止接收。 --- ## 03.短路与和逻辑与的区别——老实人和机灵鬼 ### 题目描述 难度:简单 > > > ``` > /\*\* > \* 短路与和逻辑与 > \*/ > public class question_03 { > public static void main(String[] args){ > int i=5; > boolean e = i > 6 & i++ > 7; > System.out.println(e); > System.out.println(i); > e = i > 6 && i++ > 7; > System.out.println(e); > System.out.println(i); > } > } > > ``` > > 请写出以上代码的输出 > > > ### 知识点 * 关系运算符 * 自增运算 ### 解题思路 * 逻辑与(&)和短路与(&&)在运算上对条件的结果判断不会产生影响,但会对条件本身的运算有影响。 * 逻辑与(&)在运算时会连续运算所有需要判断的命令.但短路与当遇到`false`时就**停止**运算。 ### 代码实现 **分析** 第一次判断是逻辑与,老实人不管对错,全部计算一下,则`i++`被执行,输出`e=false;i=6`; 第二次判断是短路与,机灵鬼先判断第一个是错的,就不再往下计算,`i++`不被执行,输出`e=false;i=6`; **验证** ![](https://img-blog.csdnimg.cn/img_convert/18de16e0261f49e826a39f5c1b336e24.png) ### 总结 在实际开发中为了增强代码的可读性,统一使用短路与,且不在判断条件中做任何运算。 --- ## 04.三数排序——两数交换高级算法 ### 题目描述 难度:简单 > > 用if语句实现a、b、c的值按从小到大排序 > > > ### 知识点 * `if`判断 * 两数交换 ### 解题思路 #### 1.if判断 本题整理的思路就是**比较 - > 交换**。 `if`作为一种分支结构,用来根据判断条件的不同做不同的后续处理。 #### 2.两数交换 通常的做法,好比交换两个杯子的水,需要先找来一个空杯子,也就是一个临时变量存值。代码如下:
int t=a;
a=b;
b=t;
高级做法,不使用其他变量如何做?思考声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/神奇cpp/article/detail/754644
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。